Skip to content
0:00 / 0:00

#llvm#orcjit#jit

2016 LLVM Developers’ Meeting: L. Hames “ORC -- LLVM's Next Generation of JIT API”

LLVM

18K subscribers • 18 videos on Hallway

YouTube
  • Recommended by 2 people: 2 in engineering communities.
  • A classic. People kept recommending it from 2019 to 2025.
  • Presented by Lang Hames
  • Linked in the descriptionSlides on llvm.org
  • May be out of date. The tools, versions or practices it shows have likely moved on.

Advanced. Deep dive for people who know the field.

6.2K views9 years ago2 recommendations

Systems programmingProgramming languagesCompilers and interpreters

Lang Hames explains the design and features of ORC, LLVM's modular next-generation JIT compiler API.

LLVM.org/devmtg/2016-11/ — ORC -- LLVM's Next Generation of JIT API - Lang Hames, Apple Inc. Slides: llvm.org/devmtg/2016-11/Slides/Hames-ORC.pdf — ORC is a modular re-implementation of MCJIT that allows for more flexible configuration, better memory management, more fine-grained testing, and easier addition of new features. Its feature set includes of all MCJIT’s current functionality, plus built-in support for lazy and remote compilation. This talk describes ORC’s current features and design concepts, and provides demonstrations of how it can be used. — Videos Filmed & Edited by Bash Films: BashFilms.com

Why it's here

2 people recommend this

What people say. Recommended as a demonstration of JIT compiling systems languages like C using LLVM's ORC.

u/thegreatbeanzin r/Compilers • Recommends

On “Why Aren't There any JIT Compiled Systems Languages?”

You’re asking a flawed question. There absolutely are JIT’d systems languages. Lang Hames, the author of LLVM’s ORC JIT, has been demonstrating JITing C for almost a decade (see: link to this video Many developer tools for systems languages leverage JITs to improve developer productivity. Look at Swift Playgrounds or the SwiftUI editor, LLDB’s expression evaluator, or the Clang REPL. The more meaningful question is “why aren’t programs in systems languages commonly _distributed_ for JITing?” There are a few that are, following the model Java pioneered of compiling to a virtual ISA that is JIT’d by a runtime. With WebAssembly any language can be a JIT-compiled language. JIT compiling for system langu…

u/drmeisterin r/Compilers • Recommends

On “LLVM 8 Has Been Released With New Toolchain Requirements”

Yeah - super neat. Lang Hames gave a talk on it at the 2018 LLVM Dev meeting. [video