之前在 LLVM每日谈之四十七 LLVM后端文档解析 中,介绍了后端文档中提到关于后端的六大模块、七大环节和七个步骤。前文也提到过,它们是从不同的维度去解析LLVM的后端,不同维度之间是存在各种各样的交叉关系的。在这里,简单对于三者的关系进行解析。
六大模块中第四个模块 Target-independent code generation algorithms (代码地址:lib/CodeGen) ,这个不依赖于具体平台的算法是用来实现生成native code的各个环节的,例如:寄存器分配、调度等。说的再直接一点,这个模块包含了我们前面提到了后端的 七大环节 。
在 The LLVM Target-Independent Code Generator 文档中,在 target-independent-code-generation-algorithms 部分,上来第一句就是: This section documents the phases described in the high-level design of the code generator . It explains how they work and some of the rationale behind their design. 其中的“high-level design of the code generator”,就是我们前文指出的“ 七大环节 ”。也就是说,我们讲的“ 七大环节 ”对应了六大部分中的 第四个部分 。
而我们新建后端的 七大步骤 ,既要保证针对该新建后端的 六个部分 完整,也要保证针对该新建后端的 七大环节 完整,这样才能保证新建后端的正常运行。
后续会对七大步骤对应六大部分和七大环节的具体关系进行解析。
LLVM后端的其他文章:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
图片转BASE64编码
在线图片转Base64编码工具
HTML 编码/解码
HTML 编码/解码