窥孔优化在GCC编译器中的实现.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
窥孔优化在GCC编译器中的实现

第22卷第12期 乐山师范学院学报 V01.22.No.12 ofLeshanTeachers Dec.2007 2007年12月 Journal College 项炜 §乐山师范学院计算机科学与信息工程系,四川乐山614004) 中运用到了窥孔优化的几种典型项目,如强度削弱、常数合并、无用代码删除等。 关键词:C,CC;窥孔优化;强度削弱;常数合并;常数传播;无用代码 中图分类号:TP314文献标识码:A 文章编号:1009—8666(200r7)12—0057—02 O引言 序通常很小,只需很少的内存,执行速度很快。 2典型窥孔优化项目 Linux系统下的C,CC(臼哪C Compiler)是GNU推出 的功能强大、性能优越的多平台编译器,是GNU的代表作 2.1,强度削弱 品之一,是可以在多种硬件平台上编译出可执行程序的超 所谓强度削弱,是指用—个执行时间更短的操作去等 级编译器,其平均执行效率与一般的编译器相比要高出 价替代原操作。例如:众所周知,在c语言中,位移运算在 20%-30%。 绝大多数机器上的执行速度比乘除运算要快很多,故可在 C,CC编译程序的一趟编译可以包含20一30多遍,其中中间代码级上将乘以2的运算用左移n位来替换(如 绝大部分是用来执行优化功能的,所以代码优化是C,CC编 译器中相当重要的—个环节,它是指GCC编译器为了生成 来替换。 高质量的目标代码而作的各种等价加工和处理。在众多的 强度削弱可以灵活地加以运用。例如:乘以一个较小 代码优化技术中,窥孔优化在C,CC中应用得非常广泛。在 整数可用多个加法代替;较大整数的乘法可以联合使用位 本文中,针对GCC中最常见的几种窥孔优化项目,分别配 移和加法来优化。例如:tl*=33可以替换为指令组: 以相应的代码实例展开探讨。 t2--tl;t2=5;tl+=t2; 值得注意的是:强度削弱优化后的代码长度可能比优 1基本原理 化前要长一些。此时优化程序需要在时间和空间两方面进 窥孔优化的基本思想是:考察编译器所生成的中间代 行—些智能权衡。另外,对于非算术运算进行强度削弱时要 码或目标代码中的一段相邻指令,将其中的某些指令组替 充分考虑目标机器的指令系统,例如:某机器支持多种形式 换为效率更高(更短更快)的等价指令组。窥孔优化有如下 的转移指令,优化程序可从中选择效率最高的指令来优化。 五个特点:(1)优化对象既可以是中间代码级,也可以是目 2.2常数合并和常数传播 标代码级。(2)每次处理的只是一组相邻指令,相当于将一 所谓常数合并,是指在编译时就将源代码中的常数表 组相邻指令暴露在一个优化窗口中(正如“窥孔”的含义)。 达式的值先行算出,这样就不必要去生成用于计算该常数 (3)对优化对象进行线性扫描。(4)优化后产生的结果可能表达式的目标代码了。例如:可将表达式2*3.14*r翻译成 会给后面的代码提供进一步优化的机会。(5)窥孔优化程 6.28r,这种常数合并在语法制导翻译阶段就可以完成。类 收稿日期:2007-01—17 作者简介:项炜(1977-),男,四川青神人,ff.,h师范学院计算机科学与信息工程系讲师,在职研究生。研究方向:编译,网格。 57 万方数据万方数据 似地,可将乘1、除1、加O、减0,0次位移等操作的c代码 (hati,j,ar

您可能关注的文档

文档评论(0)

xxj1658888 + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档