摘要:
Analysis of symbolic expressions benefits from a suitable program representation. We show how to build thinned gated singleassignment (TGSA) form, a value-oriented program representation which is more complete than standard SSA form, defined on all reducible programs, and better for representing symbolic expressions than program dependence graphs or original GSA form. We present practical algorithms for constructing thinned GSA form from the control dependence graph and SSA form. Extensive experiments on large Fortran programs show these methods to take linear time and space in practice. Our implementation of value numbering on TGSA form drives scalar symbolic analysis in the ParaScope programming environment. 1 Introduction Analysis of non-constant values yields significant benefits in a parallelizing compiler. The design of a symbolic analyzer requires careful choice of a program representation, that these benefits may be gained without using excessive time and space. In symbolic ...
展开