This note collects resources on the general compilation pipeline. In other words, how does a compiler work?

See also

This draws heavily from the Stanford CS 143: Compilers course resources.

From here:

The stages of compilation

Three address code (TAC)

TAC is an lower-level IR. Generic assembly language in lower end of mid-level IRs.

_t1 = b * c;
_t2 = b * d;
_t3 = _t1 + _t2;
a = _t3;