A flat, typed, high-level quadruple-based IR.

Quad form is used for most analysis and transformation in the compiler. It maintains strong typing, and tries to be minimal. There are three main variants, and an additional variant which is occasionally useful as an intermediate:

For lower-level transformations involving explicit pointer arithmetic, LowQuad form must be used.

Related Documentation

For further information, see: @author C. Scott Ananian