CAP/MiniC/README-codegen.md
2024-10-21 23:10:10 +02:00

53 lines
1008 B
Markdown

# MiniC Compiler
LAB4 (simple code generation), MIF08 / CAP 2022-23
# Authors
Augustin LUCAS
# Contents
# Test design
# Design choices
Booleans are implemented as integers behind the scenes, but type-checking before compilation disables any casting mechanism.
As for the previous lab, the Fortran-like for-loop extension has been implemented.
# Known bugs
# Checklists
A check ([X]) means that the feature is implemented
and *tested* with appropriate test cases.
## Code generation
- [x] Number Atom
- [x] Boolean Atom
- [x] Id Atom
- [x] Additive expression
- [x] Multiplicative expression
- [x] UnaryMinus expression
- [x] Or expression
- [x] And expression
- [x] Equality expression
- [x] Relational expression (! many cases -> many tests)
- [x] Not expression
## Statements
- [x] Prog, assignements
- [x] While
- [x] Cond Block
- [x] If
- [x] Nested ifs
- [x] Nested whiles
## Allocation
- [x] Naive allocation
- [x] All in memory allocation
- [ ] Massive tests of memory allocation