Description
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
CHAPTER 1 Overview of Compilation
CHAPTER 2 Scanners
CHAPTER 3 Parsers
CHAPTER 4 Context-Sensitive Analysis
CHAPTER 5 Intermediate Representations
CHAPTER 6 The Procedure Abstraction
CHAPTER 7 Code Shape
CHAPTER 8 Introduction to Optimization
CHAPTER 9 Data-Flow Analysis
CHAPTER 10 Scalar Optimizations
CHAPTER 11 Instruction Selection
CHAPTER 12 Instruction Scheduling
CHAPTER 13 Register Allocation
Appendix A ILOC
Appendix B Data Structures