Navigation

  • index
  • next |
  • previous |
  • libgccjit 9.3.0 ( ) documentation »

Previous topic

libgccjit

Next topic

Tutorial part 1: “Hello world”

This Page

  • Show Source

Quick search

Tutorial¶

  • Tutorial part 1: “Hello world”
  • Tutorial part 2: Creating a trivial machine code function
    • Error-handling
    • Options
    • Full example
  • Tutorial part 3: Loops and variables
    • Expressions: lvalues and rvalues
    • Control flow
    • Visualizing the control flow graph
    • Full example
  • Tutorial part 4: Adding JIT-compilation to a toy interpreter
    • Our toy interpreter
    • Compiling to machine code
    • Setting things up
    • Populating the function
    • Verifying the control flow graph
    • Compiling the context
    • Single-stepping through the generated code
    • Examining the generated code
    • Putting it all together
    • Behind the curtain: How does our code get optimized?
  • Tutorial part 5: Implementing an Ahead-of-Time compiler
    • The “brainf” language
    • Converting a brainf script to libgccjit IR
    • Compiling a context to a file
    • Other forms of ahead-of-time-compilation

Navigation

  • index
  • next |
  • previous |
  • libgccjit 9.3.0 ( ) documentation »
© Copyright 2014-2019 Free Software Foundation, Inc.. Created using Sphinx 1.7.6.