Lecture 12: Register Allocation. Data-Flow Analysis
References
- Compiler Construction by Niklaus Wirth, chapters 9,10, 11
Data-Flow Analysis
Idea of Data Flow Analysis
Why control-flow graphs instead of syntax trees
- they can represent arbitrary jumps
- they are simple: conditions and loops represented uniformly
Continued in Lecture 12a
References
- Compiler Construction by Niklaus Wirth, chapters 9,10, 11
- Tiger book, Chapters 7-11, 17
- Abstract Interpretation in a Nutshell by Patrick Cousot (also a course at MIT)