New "ORC" JIT API Land In LLVM
The new "ORC" Just-In-Time compilation APIs have landed within mainline LLVM.
ORC is short for On-Request Compilation and its APIs are intended to be complementary to the main MCJIT APIs of LLVM.
Lang Hames explained the ORC JIT API earlier this month when announcing his work. Lang said, "The aim of these new APIs is to cleanly support a wider range of JIT use cases in LLVM, and to recover some of the functionality lost when the legacy JIT was removed. In particular, I wanted to see if I could re-enable lazy compilation while following MCJIT's design philosophy of relying on the MC layer and module-at-a-time compilation. The attached patch goes some way to addressing these aims, though there's a lot still to do."
Again, the ORC JIT work isn't to offset the MCJET API. See the aforelinked announcement for many more details along with a reference Q&A. The ORC work landed in SVN/Git on Friday to improve the just-in-time abilities of LLVM.
The On-Request Compilation support will be a feature of LLVM 3.7 given that LLVM 3.6 was already branched.
ORC is short for On-Request Compilation and its APIs are intended to be complementary to the main MCJIT APIs of LLVM.
Lang Hames explained the ORC JIT API earlier this month when announcing his work. Lang said, "The aim of these new APIs is to cleanly support a wider range of JIT use cases in LLVM, and to recover some of the functionality lost when the legacy JIT was removed. In particular, I wanted to see if I could re-enable lazy compilation while following MCJIT's design philosophy of relying on the MC layer and module-at-a-time compilation. The attached patch goes some way to addressing these aims, though there's a lot still to do."
Again, the ORC JIT work isn't to offset the MCJET API. See the aforelinked announcement for many more details along with a reference Q&A. The ORC work landed in SVN/Git on Friday to improve the just-in-time abilities of LLVM.
The On-Request Compilation support will be a feature of LLVM 3.7 given that LLVM 3.6 was already branched.
4 Comments