Isolation and analysis of optimization errors

Isolation and analysis of optimization errors
复制标题

优化错误的隔离和分析

DOI:
--
复制
发表时间:
1993
期刊:
ACM-SIGPLAN Symposium on Programming Language Design and Implementation
影响因子:
--
通讯作者:
D. Whalley
D. Whalley
中科院分区:
--
文献类型:
--
作者:
Mickey R. Boyd;D. Whalley

文献摘要

被引文献

相似文献

本文介绍了两个相关的工具,开发支持隔离和分析优化错误的vpo优化器。这两种工具都依赖于vpo来识别变化的序列,称为转换,这会导致语义上等价的(通常是改进的)代码。一种工具确定导致编译程序的执行的不正确输出的第一次传输。该工具不仅可以自动隔离非法转换,还可以识别在vpo中执行转换的位置和时刻。为了帮助分析优化错误,还实现了一个图形化的优化查看器,它可以显示vpo执行的每个转换之前和之后生成的指令的状态。优化查看器的独特功能包括转换的反向查看(或撤消)以及在与生成的指令相关联的断点处停止的能力。这两种工具都是独立使用的。这些工具一起构成了一个强大的环境,可以帮助将vpo重新定位到新机器上,并支持新优化的实验。此外,优化查看器可以用作编译器类的教学辅助工具。
This paper describes two related tools developed to support the isolation and analysis of optimization err ors in the vpo optimizer. Both tools rely on vpo identifying sequences of changes, r eferred to as transf ormations, that result in semantically equi valent (and usually impr oved) code. One tool determines the first transf ormation that causes incorrect output of the execution of the compiled program. This tool not only automatically isolates the illegal transformation, but also identifies the location and instant the transformation is performed in vpo. To assist in the analysis of an optimization err or, a graphical optimization viewer was also implemented that can display the state of the generated instructions before and after each transformation performed byvpo. Unique features of the optimization viewer include re verse viewing (or undoing) of transformations and the ability to stop at breakpoints associated with the gener ated instructions. Both tools are useful independently. Together these tools f orm a powerful envir onment for facilitating the r etargeting of vpo to a new machine and supporting experimentation with new optimizations. In addition, the optimization viewer can be used as a teaching aid in compiler classes.