What is SSA form?

An IR form in which variables are renamed so each is assigned exactly once, with φ functions selecting values at join points. Clear definition-use relationships make optimization easier.

Field: Compilers

SSA form in the explanations

Questions that mention SSA form (2)

  1. Which is a characteristic of an IR in SSA form?
  2. Converting the code above to SSA form inserts an expression like "x3 = φ(x1, x2)" after the if statement. What does the φ function do?

Related terms

Abstract syntax tree Basic block Common subexpression elimination Constant folding Control-flow graph Function inlining Instruction scheduling Intermediate representation JIT compilation Lexical analysis

Back to the glossary