A polynomial-time algorithm for global value numbering

[1]  George C. Necula,et al.  Translation validation for an optimizing compiler , 2000, PLDI '00.

[2]  Cliff Click,et al.  Global code motion/global value numbering , 1995, PLDI '95.

[3]  Helmut Seidl,et al.  Interprocedural Herbrand Equalities , 2005, ESOP.

[4]  Bernhard Steffen,et al.  Detecting Equalities of Variables: Combining Efficiency with Precision , 1999, SAS.

[5]  Helmut Seidl,et al.  Checking Herbrand Equalities and Beyond , 2005, VMCAI.

[6]  Bowen Alpern,et al.  Detecting equality of variables in programs , 1988, POPL '88.

[7]  Join Algorithms for the Theory of Uninterpreted Functions , 2004, FSTTCS.

[8]  Sumit Gulwani,et al.  Global value numbering using random interpretation , 2004, POPL '04.

[9]  Bernhard Steffen,et al.  The Value Flow Graph: A Program Representation for Optimal Program Transformations , 1990, ESOP.

[10]  Simon L. Peyton Jones,et al.  Imperative functional programming , 1993, POPL '93.

[11]  Karthik Gargi A sparse algorithm for predicated global value numbering , 2002, PLDI '02.

[12]  M. Wegman,et al.  Global value numbers and redundant computations , 1988, POPL '88.

[13]  Steven S. Muchnick,et al.  Advanced Compiler Design and Implementation , 1997 .

[14]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[15]  Mark N. Wegman,et al.  Efficiently computing static single assignment form and the control dependence graph , 1991, TOPL.

[16]  Gary A. Kildall,et al.  A unified approach to global program optimization , 1973, POPL.

[17]  Amir Pnueli,et al.  Translation Validation , 1998, TACAS.

[18]  Mark N. Wegman,et al.  Constant propagation with conditional branches , 1985, POPL.