GENERIC,GIMPLE和RTL
来源:互联网 发布:js开头的白色车牌 编辑:程序博客网 时间:2024/06/05 16:14
在编译过程中,GCC使用了三种主要的中间语言来表示程序:GENERIC,GIMPLE和RTL。GENERIC是一种由每个前端生成的语言无关的表示。它用来作为解析器和优化器之间的接口。GENERIC是一种通用表示,能够表示GCC支持的所有语言程序。
GIMPLE和RTL用于优化程序。GIMPLE用于目标和语言无关的优化(例如,内联,常数传播,尾调用消除,冗余消除等)。与GENERIC比较相似,GIMPLE是一种语言无关的树型表示。不过,与GENERIC不同的是GIMPLE的语法有更多的限制:表达式不包含3个以上的操作数(函数调用除外),它没有控制流程结构,并且具有副作用的表达式只允许出现在赋值语句的右端。详情参见描述GENERIC和GIMPLE的章节。
这章描述在GIMPLE优化器(也被称为“树优化器”或者“中端”)中使用的数据结构和函数。特别是侧重于所有的宏,数据结构,函数和实现GIMPLE优化过程所需要的编程架构。
- GENERIC: 一种高层次的语言无关的表示。
- GIMPLE: 一种低层次的树型表示。
- 注解: 语句和变量的属性。
- 语句操作数: 由GIMPLE语句所引用的变量。
- SSA: 静态单赋值表示。
- 别名分析: 加载和存储的别名表示。
引用自:http://www.blogbus.com/public/tb.php/5671217/67098498/ff56e02b0367cb79cc66bfbcb9627a27
0 0
- GENERIC,GIMPLE和RTL
- gcc 的gimple 调试
- 行为级和RTL级的区别
- 行为级和RTL级的区别
- Generic
- Generic
- generic
- Generic Netlink分析和使用
- 关于gcc中tree和rtl的定义
- XST中View RTL Schematic和View Technology Schematic区别
- Nt**、Zw**和Rtl** 开头的函数介绍
- 时序逻辑和组合逻辑的RTL的对照表
- Nt**、Zw**和Rtl** 开头的函数介绍
- RTL 级时序和面积优化(1)
- ISE中RTL Schematic和Technology Schematic之间的区别
- 使用GNURadio和RTL-SDR搭建FM广播接收机
- Generic<Programming>: 再谈Min和Max
- Generic 和 cast 的 性能比较
- Centos6_64架设VPN服务器
- c#之socket网络编程流程
- 【慕课笔记】U4 多态 第4节 JAVA中的接口
- Ubuntu下deb包的安装方法
- [NOIP 2015] 斗地主 landlord
- GENERIC,GIMPLE和RTL
- cocos2d int, float, double, const char* 转string
- 蓝桥杯 算法训练 排序
- 年后玩玩php,顺便发发牢骚
- 极限编程的思想方法在差错控制中的应用
- jsp是怎么运行的
- Java EE 之 过滤器入门学习与总结(1)
- HDOJ 3853 LOOPS (概率DP)
- 【bzoj2834】回家的路 最短路