This entirely revised second edition of Engineering a Compiler is full of technical updates and new material covering the latest developments in compiler technology. In this comprehensive text you will learn important techniques for constructing a modern compiler. Leading educators and researchers Keith Cooper and Linda Torczon combine basic principles with pragmatic insights from their experience building state-of-the-art compilers. They will help you fully understand important techniques such as compilation of imperative and object-oriented languages, construction of static single assignment forms, instruction scheduling, and graph-coloring register allocation.
Table of Contents
1. Overview of Compilation 2. Scanners 3. Parsers 4. Context Sensitive Analysis 5. Intermediate Representations 6. The Procedure Abstraction 7. Code Shape 8. Introduction to Optimization 9. Data-Flow Analysis 10. Scalar Optimizations 11. Instruction Selection 12. Instruction Scheduling 13. Register Allocation A. ILOC B. Data Structures