一个玩具编译器,支持将SysY编译为Koopa IR或RISC-V汇编(未实现数组,也许未来会补上?)。
BTW,有很多地方写的不好,比如lalrpop解析文件,为了让LR(1)算法开心作者不得不采用某些很冗余的做法。
但无论如何,这是作者窥视编译器设计的一次尝试,在这点上作者自认为已经够了。
# 生成 Koopa IR
cargo run -- -koopa <输入文件路径> -o <输出文件路径>
# 生成 RISC-V 汇编
cargo run -- -riscv <输入文件路径> -o <输出文件路径>本项目采用 MulanPSL-2.0 许可证。查看 LICENSE 文件获取更多信息
感谢 Rust 社区提供优秀的开发工具和库!