内容简介:前文理清楚了六大部分、七大环节和七大步骤的对应关系。那么我们接下来要深入的去分析:Target description classes的1、Target description classes,作为LLVM后端六大部分的第一大部分,主要是提供目标机器的一个抽象描述,不依赖于任何特定的客户端。
前文理清楚了六大部分、七大环节和七大步骤的对应关系。那么我们接下来要深入的去分析: Target description classes : abstract target description interfaces (代码地址:include/llvm/Target/)。
Target description classes的 特点 主要有以下几点:
1、Target description classes,作为LLVM后端六大部分的第一大部分,主要是提供目标机器的一个抽象描述,不依赖于任何特定的客户端。
2、Target description classes所包含的类,是设计来捕捉目标的抽象特性,和具体的代码生成算法没有任何关系。
3、所有的Target description classes(除了DataLayout之外),都是设计来做具体目标实现的父类的(具体的目标实现要实现这些类的子类),所以这些类的实现都是虚函数实现的。
4、TargetMachine类是目标机器的完整机器描述的初始入口,通过该接口可以获取特定目标的所有信息。(Primary interface to the complete machine description for the target machine. All target-specific information should be accessible through this interface.)该类包含了一系列的get*Info 虚函数,以便获目标机器的相关信息,这些虚函数在具体的目标机器实现的时候会做具体实现。
总结起来,在所有的Target description classes中,TargetMachine和DataLayout是比较特殊的。TargetMachine是访问具体目标机器实现的一个最初入口,包含了大量可以访问具体目标机器信息的接口。而DataLayout是Target description classes类中唯一不可扩展的,存放在include/llvm/IR/DataLayout.h 。具体代码: DataLayout.h
在Target description classes中,除了 TargetMachine 和 DataLayout 两个比较特殊的类之外,还有如下一些类:
TargetLowering (include/llvm/Codegen/TargetLowering.h)
TargetRegisterInfo (include/llvm/CodeGen/TargetRegisterInfo.h)
TargetInstrInfo (include/llvm/CodeGen/TargetInstrInfo.h)
TargetFrameLowering (include/llvm/CodeGen/TargetFrameLowering.h)
TargetSubtarget (目前已经没有TargetSubtarget类,只有 TargetSubtargetInfo 类,地址为:include/llvm/CodeGen/TargetSubtargetInfo.h)
TargetJITInfo (目前已经没有TargetJITInfo类)
---------------------------------------------------------------------------------------
注意!注意!注意!
文档没有跟上最新的代码变动。所以,我们提到的 Target description classes 的代码地址:include/llvm/Target/,已经完全不适用了。我们目前除了TargetMachine类还在这里之外,其他的类已经都换地方了。多数类移动到了include/llvm/CodeGen/目录之下,提交节点为: rL318490 。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- HashMap源码全解析从一道面试题说起:请一行一行代码描述下hashmap put方法
- 用不可描述的图片做可以描述的事情
- 文件描述符了解一下
- shell文件描述符
- 使用 Lisp 简单描述加法运算
- 使用 Lisp 简单描述加法运算
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
互联网的误读
詹姆斯•柯兰(James Curran)、娜塔莉•芬顿(Natalie Fenton)、德 斯•弗里德曼(Des Freedman) / 何道宽 / 中国人民大学出版社 / 2014-7-1 / 45.00
互联网的发展蔚为壮观。如今,全球的互联网用户达到20亿之众,约占世界人口的30%。这无疑是一个新的现象,对于当代各国的经济、政治和社会生活意义重大。有关互联网的大量大众读物和学术著作鼓吹其潜力将从根本上被重新认识,这在20世纪90年代中期一片唱好时表现尤甚,那时许多论者都对互联网敬畏三分,惊叹有加。虽然敬畏和惊叹可能已成过去,然而它背后的技术中心主义——相信技术决定结果——却阴魂不散,与之伴生的则......一起来看看 《互联网的误读》 这本书的介绍吧!