aalhour / aalhour/PyCOOLC

Epic 2: Wire IR into the compilation pipeline (AST → TAC → MIPS)

Đang mở
#18 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Python
Star
41
Fork
10
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

## Epic 2: Wire IR into the compilation pipeline (AST → TAC → MIPS)

### Goal: IR is not a teaching demo; it actually drives codegen and optimizations.

- [ ] Define pipeline stages explicitly:
- [ ] parse → sema → lower-to-TAC → optimize → regalloc/stack-alloc → emit MIPS
- [ ] Ensure TAC lowering covers all COOL constructs (if not already complete)
- [ ] Write a TAC-to-MIPS code generator (new backend):
- [ ] calling convention (args, return, saved regs)
- [ ] stack frame layout rules
- [ ] object layout / runtime calls
- [ ] string ops (concat, length, substr) correctness
- [ ] Keep current AST-to-MIPS backend temporarily as reference/fallback
- [ ] Add integration tests comparing TAC-path output vs AST-path output (until AST path is retired)

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.