CJC MIR (Mid-level Intermediate Representation)
MIR is a control-flow graph (CFG) of basic blocks. Every value is an explicit temporary. This is the level where:
- Pattern matching is compiled to decision trees (Stage 2.2)
- Closures are lambda-lifted (Stage 2.1)
nogcverification runs (Stage 2.4)- Optimization passes operate (Stage 2.4)
For Milestone 2.0, MIR is a simplified representation that mirrors HIR closely — we lower HIR items into MIR functions with basic blocks for straight-line code, if/else, while, and function calls.