CORC  > 软件研究所  > 互联网软件技术实验室  > 学位论文
题名基于形式描述的编译优化自动测试方法与技术研究
学位类别硕士
答辩日期2009-05-26
授予单位中国科学院研究生院
授予地点中国科学院软件研究所
导师赵琛 李明树
关键词编译优化,测试自动化,形式描述,测试程序,测试生成,测试执行
其他题名Research on Automated Methods and Techniques for Testing Compiler Optimizations Based on Formal Specifications
中文摘要编译优化是现代编译器不可缺少的重要功能。编译优化技术在过去几十年里取得了显著进展,对提升程序运行速度、节省存储空间、节省能耗等起到了不可替代的作用。然而,编译优化的可靠性却不尽人意。编译优化技术种类多、处理复杂而且可复用性弱,容易出错,即便是成熟的编译器,也不断有与编译优化相关的bug被发现出来。编译器的可靠性对软件产品的可靠性和安全性有直接影响,随着编译优化在现代编译器中的比重不断增加,编译优化的可靠性也日益受到人们的关注。 软件测试是保障编译优化可靠性的基本技术手段之一,然而,编译优化测试涉及测试程序编写、测试执行等过程,人工完成相当费时费力,因此有必要研究编译优化自动测试方法,以提高编译优化测试的效率。基于这一实际需求,Intel、MEI (Matsushita Electric Industrial)、DaimlerChrysler AG等业界产商近年来也相继与有关研究机构开展合作,研究编译优化自动测试方法。 目前已有的编译器自动测试方法中大多数都是以程序设计语言的语法和语义为主要依据,适用于测试语法检查、语义检查、代码生成等基本编译功能,对于编译优化的测试则缺乏针对性,测试效率较低,而已有的若干种面向编译优化的自动测试方法也存在着对编译优化刻画不够准确、自动化程度不高等缺陷。 本文提出一种基于形式描述的编译优化自动测试方法(TEMCOFS),其实现过程分为四个阶段,即:(1) 建立编译优化形式描述;(2) 分析编译优化描述的正确性;(3) 基于编译优化形式描述自动生成测试程序;(4) 自动执行测试。在TEMCOFS方法框架下,本文分别研究了编译优化形式化描述方法、编译优化描述正确性分析方法和基于形式描述的两种自动测试方法,实现了三类典型优化—表达式优化、数据流优化、循环优化的自动测试,主要工作包括: (1) 在编译优化形式描述方面,除了应用前人研究成果—TRANS语言描述了表达式优化和数据流优化之外,还对TRANS语言进行了扩展,建立了循环优化的形式描述机制; (2) 在编译优化正确性分析方面,首先证明了揭示程序数据依赖关系对程序变换正确性影响的依赖基础定理,为循环优化正确性分析提供了基础,然后探讨了编译优化正确性分析的一般方法; (3) 在测试自动执行方面,提出了编译优化自动变形测试执行方法,该方法将变形测试思想引入编译优化测试中,利用测试程序等价性质实现测试结果的自动判定,能够避免传统方法中测试结果判定所存在的问题; (4) 在测试程序自动生成方面,分别对应两种测试自动执行方法—比照法和变形法提出了基于编译优化形式描述的测试程序自动生成方法,能够根据表达式优化、数据流优化、循环优化的形式描述自动生成测试程序集。 在GCC编译器上的实验表明,基于本文方法自动生成的测试程序集可使GCC的编译优化模块较快达到较高的测试覆盖率。与其他编译器自动测试方法相比,本文方法对编译优化测试的针对性较好,自动化程度也较高。总而言之,本文方法对于提高编译优化测试效率、保障优化编译器的质量具有较好的实用和参考价值。
语种中文
学科主题软件工程
公开日期2009-06-12
内容类型学位论文
源URL[http://124.16.136.157//handle/311060/149]  
专题软件研究所_互联网软件技术实验室 _学位论文
推荐引用方式
GB/T 7714
. 基于形式描述的编译优化自动测试方法与技术研究[D]. 中国科学院软件研究所. 中国科学院研究生院. 2009.
个性服务
查看访问统计
相关权益政策
暂无数据
收藏/分享
所有评论 (0)
暂无评论
 

除非特别说明,本系统中所有内容都受版权保护,并保留所有权利。


©版权所有 ©2017 CSpace - Powered by CSpace