Home

Awesome

LLVM GUI

This tool allows you to run simple C programs in a code editor, select an order of optimizations, and even view the control-flow-graph, dominator tree, or the post-dominator tree. This is a pedagogical tool that has been adopted from the GUI used in my LLVM-JVM project. This has been modified to run C code rather than requiring the LLVM-JVM to compile Java down to Bytecode and then down to LLVM IR.

Build Instructions

Dependencies

Build from Release

'java -jar LLVM-Simple-GUI.jar [filename]' where 'filename' is an optional C file.

Build from Source

Advised to use NetBeans, as no Makefile will be provided!

What does it do?

Includes a Code Editor with basic Syntax Highlighting!

CodeEditor

See the CFG, DOM Tree, and POSTDOM Tree!

CFG DOM POSTDOM

Select from various optimizations

OptimizationPanel

See Before-And-After Transformations!

CFG After-Optimization

View Basic Block Headers Only for Larger Functions!

CFG Header DOM Header POSTDOM Header