This lab is part of CentraleSupélec compilation course.
This is a simple E compiler (which will be further extended to support C language). The compiler is not complete yet. For now supported features include :
- lexer (token generator) suited for E language
- LL(1) parser, generated with ALPAGA (An Ll(1) PArser GenerAtor)
- E program generator (from AST) and interpreter (from E program)
- Liveliness analysis
- Dead assignment and NOP elimination
- Efficient RTL linearizer
- Register allocation
- Function calls
- Basic types : void, int, char
- Pointers !
