Intermediate Code Generation Because of the complexity of code generation, a compiler typically breaks up this phase into several steps,involving various intermediate data structures, often including some form of abstract code called intermediate code. Reference/Source : Compiler Construction: Principles and Practice Kenneth C Louden