基于模拟关系的编译优化实现正确性验证方法
作者:何炎祥;吴伟;陈勇;刘健博;徐超
作者单位:武汉大学计算机学院,湖北武汉430072;软件工程国家重点实验室,湖北武汉430072;武汉大学计算机学院,湖北武汉430072;徐州工业职业技术学院,江苏徐州221000;软件工程国家重点实验室,湖北武汉430072
加工时间:2014-05-15
信息来源:《电子学报》
关键词:编译优化;正确性;模拟关系;定理证明
摘 要:编译器中通常采用各种优化方法来提高目标代码的质量,为了实现较好的效果,一些编译优化算法通常十分复杂,很容易给可靠性和安全性带来隐患.现有的编译器缺陷大部分是由优化阶段引起的.传统的编译优化正确性研究大部分只关注优化算法的正确性,但是只有该算法被正确的实现了才能确保实际运行的优化过程是正确的.本文提出一种基于模拟关系的方法来验证编译优化实现的正确性.在每次优化结束后,我们通过建立优化前代码和优化后代码之间的模拟关系生成优化正确应满足的逻辑条件,然后验证逻辑条件是否成立从而判定编译优化的实现是否正确性.以优化编译中的常量折叠优化和变量替换的验证作为示例显示了本方法的有效性和可靠性.