BACKEND STRUCTURE
这章首先介绍后端类继承树与类成员。下一步,接着后端结构,加上各节的后端单独类实现。最后一章,我们有一个编译llvm中间代码为Cpu0汇编码的后端。
许多行代码在这一章被添加。他们在每个后端中几乎一样,除了名字(Cpu0 或者Mips……)。实际上,我们从Mips拷贝所有的代码,吧名字替换成Cpu0。此外知道编译理论上的DAGs的匹配和实际上llvm代码生成期,请将目光聚焦于后端结构中的类的关系。一旦知道结构,你可以像我们一样快地创建你的后端结构,即使有5000行左右的代码在这章被添加。
3.1 TargetMachine 结构
lbdex/chapters/Chapter3_1/Cpu0TargetObjectFile.h
lbdex/chapters/Chapter3_1/Cpu0TargetObjectFile.h
lbdex/chapters/Chapter3_1/Cpu0TargetMachine.h
lbdex/chapters/Chapter3_1/Cpu0TargetMachine.cpp
lbdex/chapters/Chapter3_1/Cpu0.td
- 基本上是各个文件的罗列,就不上图了。