[GSoC] Modernize the "Building a JIT" Tutorial Series

Hi everyone,

I’m Ajay, a student at the University of Illinois at Urbana-Champaign. This summer, as a part of my GSoC 2021 project, I’ll be working with Lang Hames and Vassil Vassilev to revise the “Building a JIT” tutorials for the new version of the ORC API.

The broader goal is to build a set of comprehensive tutorials that showcase the latest features of ORC, many of which have not made their way into the existing tutorials yet. Specifically, some of the things we have planned include:

  • Using the simplest KaleidoscopeJIT implementation to introduce the basic ideas behind JIT compilers and the ORC API.

  • Verifying that the existing chapters (1 and 2) are up-to-date and the code works as expected. These are “complete” but may need minor updates and revisions.

  • Adding the text to the other chapters (3, 4, and 5), which only have code at the moment.

  • Writing additional chapters to demonstrate new features like concurrent, out-of-process, and lazy/eager compilation.

If anyone would like to read more about my project or share any thoughts/ideas, feel free to take a look at my original proposal doc and add comments or contact me directly. I’d appreciate any feedback/suggestions, and I’m super excited to contribute to the LLVM project this summer!