Tiger Compiler
4. Abstract Syntax (Parser produce Abstract Parse Tree. Expression, Declaration, operation, type)
5. Semantic Analysis (Type Environment (Type declartion), Variable/Function Environment (var, func declaration), type checking)
9. Liveness Analysis (Take the Assembly, at each point find the temp registers that are live, interference)
10. Regsiter Allocation (resolve the interfence graph, replace the temp register in Assembly with real registers)