peC语言的部分求值器及在编译器测试中的应用  被引量:3

Partial Evaluator for peC and Its Application to Compiler Validation

在线阅读下载全文

作  者:郭德贵[1,2] 王冠成[1] 吕帅[1,2,3] 刘磊[1,4] 

机构地区:[1]吉林大学计算机科学与技术学院,吉林长春130012 [2]符号计算与知识工程教育部重点实验室(吉林大学),吉林长春130012 [3]吉林大学数学学院,吉林长春130012 [4]吉林大学软件学院,吉林长春130012

出  处:《软件学报》2017年第5期1221-1232,共12页Journal of Software

基  金:吉林省科技发展计划(20150101054JC;20140520069JH;20150520060JH);国家自然科学基金(61300049);教育部高等学校博士学科点专项科研基金(20120061120059);吉林大学研究生创新基金(2016181)~~

摘  要:部分求值技术在程序优化及软件自动生成等方面起着极为重要的作用.将部分求值技术应用到编译器测试中.为此,设计了一种C语言的子集peC语言,给出了该语言的部分求值策略的形式化描述,实现了peC语言的部分求值器,设计了基于部分求值技术的编译器测试框架.通过实验,该方法可以检测出大部分之前其他方法发现的GCC,LLVM编译器中的错误,此外还发现了其他方法不能发现的错误,这表明,将部分求值技术应用到编译器测试中是有效的.Partial evaluation plays an important role in many areas such as program optimization and automatic software generation. This paper applies partial evaluation to validating compilers. The design of peC, which is a subset of C, and the formalized description of partial evaluation strategy for peC are presented. Furthermore, the implementation of a partial evaluator for peC, and a compiler testing framework based on partial evaluation are provided. Experiments show that this new approach can not only detect errors which can be detected by other methods in GCC and LLVM but also found some errors which are not detected by the other methods. In summary, the work by this paper demonstrates applying partial evaluation in testing compilers is effective.

关 键 词:部分求值 剩余程序 测试用例 编译器测试 抽象语法树 

分 类 号:TP314[自动化与计算机技术—计算机软件与理论]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象