2021Spring北京大学编译实践lab报告
序言
2022年春季学期的编译原理修改了Lab的内容,改为由助教自行新开发的项目。Lab的最终目的是实现一个可以将 SysY 语言(C 语言的子集)编译到 RISC-V 汇编的编译器。具体的实现可以分成两个阶段,首先是将 SysY 语言翻译到 Koopa 的中间表示代码,然后从中间代码构建最终的 RISC-V 汇编。
环境配置
首先需要配置相关的环境。
Lab 的运行环境以及需要的工具链已经打包成了镜像,可以运行在 Docker 中。拉取镜像使用以下命令:
1docker pull maxxing/compiler-dev
然后就遇到了第一个问题——下载速度非常慢。可以尝试修改源,在 Docker 的设置—— Docker Engine 中将对话框代码替换为如下代码:
12345678910111213141516{ "builder": { "gc": { "defaultKeepStorage": "20GB", "enabled&qu ...