Skip to content

Latest commit

 

History

History
91 lines (63 loc) · 3.84 KB

INDEX.md

File metadata and controls

91 lines (63 loc) · 3.84 KB

ScratchV 课题索引 — 第一期 14 个课题

🌐 在线课程: 在浏览器中学习 — 带进度追踪、搜索、深色主题的交互式课程

🛠️ 本地生成: make docs → docs/topics/html/index.html

🔰 新手? 先看总文档:00-环境搭建指南 → 01-编译器概念入门 → 02-快速上手教程

📊 指标不懂? 03-指标解读指南

🐛 报错了? 04-故障排除FAQ


Topic 04 IR优化器

文档状态说明

标记 含义
✅ 已完成
⬜ 规划中(待开发)

每个课题一个文件夹,内含指引(本目录的 NN-*.md)与配套的设计文档、开发文档。


🔰 入门级 — 动手做(7 个)

从零开始实现编译器的基础工具。

编号 课题 类型 状态
05 RISC-V 汇编代码美化器 项目实战 ✅
07 编译器日志增强器 项目实战 ✅
09 DSL 错误提示美化器 项目实战 ✅
11 控制流图(CFG)生成器 项目实战 ✅
13 窥孔优化器 项目实战 ✅
18 指令调度(基本块内列表调度) 项目实战 ✅
20 项目代码规范与格式化 项目实战 ✅

🔰 入门级 — 学会看(2 个)

学习使用 ScratchV 的性能分析与指令计数工具。

编号 课题 类型 状态
06 编译器性能测试套件 项目实战 ✅
12 RISC-V 后端指令计数统计器 项目实战 ✅

📗 中级(3 个)— 核心编译器管线

编译器前中后端的关键模块。

编号 课题 类型 状态
01 DSL 前端增强器(if/while) 项目实战 ✅
14 常量加载合并优化 项目实战 ✅
17 寄存器分配(线性扫描) 项目实战 ✅

📕 高级(2 个)— 深入实现

深入编译器验证与多目标编译。

编号 课题 类型 状态
21 IR 验证器(7条规则) 项目实战 ✅
28 扩展指令选择 (F/D/abs/sqrt) 项目实战 ✅

类型说明

类型 特征 学习周期
项目实战 主要任务是"实现某功能/模块" 12 周计划
参考分析 主要任务是"学会使用/分析某工具" 4 周自学路线

📖 总文档入口: 00-环境搭建 | 01-概念入门 | 02-快速上手 | 03-指标解读 | 04-FAQ

🏗️ 架构总览: ARCHITECTURE.md