TC-L Code to Write

More information on LLVM can be found in the dedicated section.

src/llvmtranslate/llvm-type-visitor.*

Translate type::Type objects into llvm::Type objects. In the Type part of the LLVM documentation of the site all used types are defined.

src/llvmtranslate/translator.*

This is where all the translation logic goes.

The translation to LLVM IR is using the llvm::IRBuilder (IRBuilder).

src/llvmtranslate/escapes-collector.cc
  • build_frame Collect all the local variables used in a function. Used in the escape collector.

  • collect_escapes Collect escapes for every function in the ast, and store them in a map. This is used for Lambda Lifting

Both functions are based on an internal visitor.

For more information on the files see The src/llvmtranslate Directory.