Global Value Numbering: A Precise and Efficient Algorithm
Abstract
Global Value Numbering (GVN) is an important static analysis to detect equivalent expressions in a program. We present an iterative data-flow analysis GVN algorithm in SSA for the purpose of detecting total redundancies. The central challenge is defining a join operation to detect equivalences at a join point in polynomial time such that later occurrences of redundant expressions could be detected. For this purpose, we introduce the novel concept of value φ-function. We claim the algorithm is precise and takes only polynomial time.
Turn this paper into a lesson
ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.