stem/CS/Compilers.md
2023-05-20 01:33:56 +01:00

806 B

JIT

Just-in-Time

  • Compilation during execution
    • At run time
  • Bytecode translation to machine code for execution
  • Combination of AOT compilation and interpretation
    • Speed of compiled code
    • Flexibility of interpretation
    • Overhead of an interpreter
    • Overhead of compiling
      • As well as interpreting
  • Dynamic compilation
  • Adaptive optimization
    • Dynamic recompilation
    • Microarchitecture-specific speedups

AOT

Ahead-of-Time

  • Compile higher-level language or intermediate representation to machine code
    • Runs natively
  • Machine-optimized code

GCC

  • Standard compiler for GNU projects and Linux
  • Parse source code to produce abstract syntax tree

LLVM

  • Compiler infrastructure
  • Develop language front ends for ISAs
  • Apple sponsored