【发布时间】:2017-11-11 23:06:52
【问题描述】:
我开始熟悉 gcc 和 llvm 中代码生成和优化算法的实现。任何人都可以就在哪里查看有关这些编译器中如何安排的材料、文章和讲座提供建议吗?我试图找到用相当简单的语言描述的东西,例如优化和代码生成算法的实现或简单的详细解释,但我没有找到。也许有一个详尽的指南,我可以在其中找到有关被调用的确切类和方法的信息,这些算法在哪些文件中编写,它们操作的基本结构(符号表及其条目、图形、AST、结构gcc 中的树和 rtl 等)。我熟悉 Steven Muchnick 的“高级编译器设计和实现”,但是如果没有一些有用的信息,在 gcc 和 llvm 的源代码中找到与 ICAN 表示法算法相似的东西是相当复杂的。
总结:
我的目标是熟悉 gcc 和 llvm 示例中优化算法和代码生成的实现。所以我想找到能以某种方式简化阅读 gcc 或 llvm 源代码的材料。我希望这些材料存在。
【问题讨论】:
-
您的具体目标是什么?你问来干什么?您想对 GCC 或 LLVM 进行哪些改进或实验?您应该编辑您的问题以改进它(并为您的工作提供额外的背景和动力)
-
已更改问题
-
那我的回答更合适。我为此写了很多幻灯片。但是您的问题在这里仍然有点题外话。
-
我的问题正是关于这些材料,因为我很难找到有用的东西。
-
我的回答应该会有所帮助,即使我编写或收集的文档不完整且略微过时。由于源代码是权威材料,因此您不会找到任何详尽且最新的文档。顺便说一句,你需要做很多工作(几个月才能对 GCC 有一个小想法,几年才能自信并明白你永远不会完全了解它)。
标签: gcc llvm compiler-optimization compiler-theory compiler-construction