A compiler from Soya to Mips
The documentation of Soya language is here
-o [file]
Name of output file
-Imp
: Compilation of Imp file
-dimp
: Save generated Imp-drtl
: Save generated RTL-dltl
: Save generated LTL-dlin
: Save generated linearize-dall
: activate all debug
- Soya Soya language
- Imp A simple imperative language.
- RTL A graph a representation of Imp with pseudos and physicals registers with 3-address operations.
- LTL Like RTL but with only physicals registers.
- Linear A linear representation of LTL
- type check Creates typed Soya AST.
- Soya2Imp Translate Soya to an simple iterative language (Imp).
- Imp2RTL Construction of the CFG, 3-address code generation.
- Const propagation Propagate constant with a static analysis.
- Call Convention Use real register to respect Call Convention.
- Dead node elimination Remove useless node when register destination is never used.
- RTL2LTL Register allocation
- linearize Linearization of the CFG
- Asm Gen Mips assembly code generation