cs-self-learning/docs/编译原理/CS420.md
Zijian Yi dd23187134
[COURSE] Add KAIST CS420: Compiler Design (#632)
* [COURSE] Add KAIST CS420: Compiler Design

* fix: resolve comments
2024-07-22 11:52:36 +08:00

1.4 KiB
Raw Permalink Blame History

CS420: Compiler Design

课程简介

  • 所属大学KAIST
  • 先修要求数据结构、计算机系统基础、Rust 编程基础
  • 编程语言Rust
  • 课程难度:🌟🌟🌟🌟
  • 预计学时80小时

这门课程提供了一个 Rust 语言编写的编译器 KECC(KAIST Educational C Compiler) 框架代码在此基础上构建编译器的一些核心部分包括语法树打印、SSA中间代码生成、中间代码优化包括 CFG 简化GVN 等)以及目标代码生成。与其他编译器课程相比,本课程主要有以下特点:

  • 该课程面向真实的 C 语言而非自定义的玩具语言,并且会使用 C 语言 Fuzzing 工具 (Csmith) 进行测试。
  • 该课程注重实用性,对编译器前端理论涉及很少,第一个实验也是直接从抽象语法树的遍历开始,并不要求你手动完成前端。课程重点关注于 IR 的设计、生成和优化,以及 RISC-V 汇编代码生成。本课程对于理解和学习 LLVM 也很有帮助。
  • 课程配套视频有详细的代码讲解,对初学者友好。

课程资源