基于pCTL的循环优化测试用例自动生成方法的研究与实现

来源 :中国科学院软件研究所 | 被引量 : 0次 | 上传用户:sdlnf
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
编译优化是现代编译器的重要功能,编译优化测试对保障现代编译器质量有着重要作用。编译优化测试需要编写大量的测试用例程序作为输入,手工完成十分费时费力,因此,有必要研究编译优化测试用例的自动生成方法。   针对编译优化测试,有研究者提出并实现了一种基于分支时序逻辑的测试用例自动生成方法COT。该方法可以有效地生成标量优化测试用例程序,但该方法没有考虑程序中的数组和指针,对优化特征的描述也不能区分循环迭代中的语句实例,更不能刻画语句实例间的数据依赖关系,然而这些是刻画循环优化所必需的,因此,COT不适用于循环优化测试用例的自动生成。   本文针对COT方法的缺陷,首先提出了基于参数化分支时序逻辑pCTL(parameterized computation temporal logic)的循环优化描述方法,通过参数化COT的优化描述体系中的语句谓词、变量引用谓词和变量定义谓词实现了对循环迭代中的语句实例及语句实例间的数据依赖关系的描述。在此基础上,本文提出了基于pCTL描述的循环优化测试用例自动生成方法COT2。该方法根据pCTL公式构造初始的关键节点控制图,再按照公式语义执行公式处理和虚边替换,得到完整的控制流图,最后计算数组引用下标,生成循环优化测试用例程序。   本文实现了COT2的系统原型,并用循环优化模块的覆盖率指标评价生成的测试用例的质量,实验结果表明该方法对循环优化具有针对性,是一种行之有效的方法。本文还用生成的测试用例程序对GCC各版本的循环优化模块进行了测试,并分析了错误发现数与各版本稳定性之间的关系,进一步验证了本文方法的有效性。
其他文献
现实世界中的优化问题通常是多属性的,一般是对多个目标的同时优化。如一个国家的最优良性发展,涉及到经济的快速增长、社会秩序的稳定、环境的保护和改善等多个方面。在这里,经
随着信息化的深入发展,FTP服务器作为一种必不可少的文件共享方式在人们的生活中扮演着越来越重要的角色。由于传统的FTP服务器完全依靠少数的管理员来管理所有用户和文件资源
面向服务架构(SOA)用开放的标准把企业的业务功能包装成标准的服务。这种服务通过明确的、与实现无关的接口来定义,服务被松散绑定,并且可以通过强调位置透明性和互操作性的通
人脸识别是模式识别和计算机视觉中的一个研究热点。在实际应用中,由于人脸图像是较为复杂的,因此需要对它进行数据降维,以避免维数灾难问题,这一过程也称为特征提取。在众多特征
安卓操作系统是基于Linux内核的移动操作系统,具有源码开放、兼容硬件丰富和易于开发等特点。龙芯中科作为自主创新的国产处理器研发机构,在移动互联网全面兴起的时代,有肩负起
随着多媒体技术和网络技术的飞速发展,多媒体信息的应用日益广泛,对规模越来越大的多媒体数据库进行有效的管理成为迫切需要解决的问题。高效、准确的多媒体检索策略是解决这一
近年来,随着软件复用技术的发展,基于构件开发作为一种软件复用的有效的方法学,得到了广泛的关注和发展。   多语种构件库设计与实现是多语种软件技术支撑平台的开发与应用的
网络信息爆炸性的增长和多元化的发展,不仅给人们带来了信息共享的快乐,同时也带来了“信息迷航”和“知识匮乏”等一系列问题。人们希望能快速地从搜索引擎中找到自己需要的信
随着经济的高速发展,环境问题越来越受到人们的重视。环境污染、环境质量退化已经成为制约区域经济发展的主要因素之一,也给人类的可持续性发展及人类自身健康造成了极大的危害
目前,越来越多的软件项目使用UML作为建模工具,一方面提高了软件开发的抽象层次,另一方面也可以生成框架代码,提高了开发效率。然而,在软件再工程和软件维护的过程中,程序代码和软