Firm Logo

Optimization and Machine Code Generation

libFirm is a C library that provides a graph-based intermediate representation, optimizations, and assembly code generation suitable for use in compilers.


  • Completely graph-based, source- and target-independent intermediate representation in SSA form

  • Accompanying GCC-compatible C frontend with full C99 support

  • Extensive set of optimizations

  • High-quality register allocation

  • Mature code generation support for x86 (32-bit) and SPARC

For a more complete list of features, see our Features page.


If you’re interested in trying out libFirm, visit the Download page to get you started.
You can also try out a demo in your browser!