编译程序的组织 (23).ppt
《编译程序的组织 (23).ppt》由会员分享,可在线阅读,更多相关《编译程序的组织 (23).ppt(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、9.1 代码优化l代码优化目的:生成效率更高的目标代码。l注意:优化优化最佳化最佳化 l要求:相对合理性相对合理性。考虑空间和时间上的取舍及二者的平衡。l优化的要求:必须是等价变换(保持功能);为优化的努力必须是值得的(获得感);有时优化后的代码的效率反而会下降(副作用)。l机器相关性机器相关优化:寄存器优化,多处理器优化,特殊指令优化等。机器无关优化:中间代码优化。l注意:本文重点关注中间代码的优化方法。优化的种类l基于中间代码优化的步骤:控制流分析:分析出程序的循环结构(优化关键);数据流分析:数据流信息的收集,主要是变量值的获得和使用情况的数据流信息;代码变换:根据上面的分析,对中间代码
2、进行等价变换。l优化范围:局部优化:如基于单个基本块范围内的线性窥孔优化等,包括常量合并优化,公共子表达式删除,计算强度削弱和无用代码删除等;全局优化:主要是基于结构信息的优化,包括针对循环的系列优化方法,如循环不变优化,归纳变量删除,计算强度削减等。线性窥孔优化l分类分类:局部优化方法。l基基本本思思想想:考察编译器所生成代码中相邻指令,将其中的某些组合替换为效率更高的指令组。l特点特点:优化的对象可以是中间代码,也可以是目标代码;每次处理的是一组相邻的指令,仿佛将其暴露在一观察窗口(窥孔)中;对优化对象进行线性扫描。l优化项目优化项目:强度削弱、常数合并和常数传播、无用代码删除等。强度削弱
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译程序的组织 23 编译程序 组织 23
限制150内