国内刊号:43-1258/TP
国际刊号:1007-130X
发布日期:
作者:朱广林, 吕方, 赖庆宽, 陈华英, 何先波,
单位:1.中国科学院计算技术研究所计算机体系结构国家重点实验室,北京 100190;2.西华师范大学计算机学院,四川 南充 637009;3.中国民用航空飞行学院,四川 广汉 618307
关键词:无效代码删除,编译优化,数据流分析,激进蝴蝶优化,SSA中间表示,
基金:国家重点研发计划(2016YFB0200803);国家自然科学基金(61872043);国家自然科学基金青年科学基金(61802368);中国科学院战略性先导科技专项(C类)(XDC05030101);西华师范大学英才基金(17YC149);CCF腾讯开放科研基金和澳大利亚研究理事会项目(RG171010)
编译优化技术的目的是挖掘程序中的优化空间,提高程序编译或运行效率,无效代码删除优化是被广泛使用的编译优化技术之一,它旨在删除程序中不可达的代码,以提升程序的执行效率。许多应用程序的执行路径往往与运行时的输入参数值相关,并且在一些分支路径上与运行时参数值相结合,可能存在无效代码,通过现有的无效代码删除优化,很难做出优化处理。为此,提出一种依赖数据流分析的激进蝴蝶优化方法,利用SSA中间表示,根据动态运行时的参数可能值,自动为程序生成代码形状类似蝴蝶(butterfly)的分支代码,使编译器在程序编译阶段为相关优化提供可行的优化依据。最后通过实验验证了该方法的有效性和可行性。
来源:2021年第6期
《计算机工程与科学》期刊编辑部