Engineering a Compiler

Engineering a Compiler

3rd Edition - September 1, 2022

Write a review

  • Authors: Keith Cooper, Linda Torczon
  • Paperback ISBN: 9780128154120

Purchase options

Purchase options
Available for Pre-Order
Sales tax will be calculated at check-out

Institutional Subscription

Free Global Shipping
No minimum order


Engineering a Compiler, Third Edition covers the latest developments in compiler technology, with new chapters focusing on semantic elaboration (the problems that arise in generating code from the ad-hoc syntax-directed translation schemes in a generated parser), on runtime support for naming and addressability, and on code shape for expressions, assignments and control-structures. Leading educators and researchers, Keith Cooper and Linda Torczon, have revised this popular text with a fresh approach to learning important techniques for constructing a modern compiler, combining basic principles with pragmatic insights from their own experience building state-of-the-art compilers.

Key Features

  • Presents in-depth treatments of algorithms and techniques used in the front end of a modern compiler
  • Pays particular attention to code optimization and code generation, both primary areas of recent research and development
  • Focuses on how compilers (and interpreters) implement abstraction, tying the underlying knowledge to students’ own experience and to the languages in which they have been taught to program
  • Covers bottom-up methods of register allocation at the local scope


Graduate, some undergraduate students in computer science. Professional compiler writers, system software developers, architects and computer system designers

Table of Contents

  • 1. Overview of Compilation
    2. Scanners
    3. Parsers
    4. Intermediate Representations
    5. Semantic Elaboration
    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

Product details

  • No. of pages: 880
  • Language: English
  • Copyright: © Morgan Kaufmann 2022
  • Published: September 1, 2022
  • Imprint: Morgan Kaufmann
  • Paperback ISBN: 9780128154120

About the Authors

Keith Cooper

Dr. Cooper Ph.D., Professor, Dept. of Computer Science at Rice University, is the leader of the Massively Scalar Compiler Project at Rice, which investigates issues relating to optimization and code generation for modern machines. He is also a member of the Center for High Performance Software Research, the Computer and Information Technology Institute, and the Center for Multimedia Communication -- all at Rice. He teaches courses in Compiler Construction at the undergraduate and graduate level.

Affiliations and Expertise

Department of Computer Science, Rice University, Houston, Texas, USA

Linda Torczon

Linda Torczon is a principal investigator on the Massively Scalar Compiler Project at Rice University, and the Grid Application Development Software Project sponsored by the next Generation Software program of the National Science Foundation. She also serves as the executive director of HiPerSoft and of the Los Alamos Computer Science Institute. Her research interests include code generation, interprocedural dataflow analysis and optimization, and programming environments.

Affiliations and Expertise

Principal Investigator on the Massively Scalar Compiler Project, Rice University, Houston, Texas, USA

Ratings and Reviews

Write a review

There are currently no reviews for "Engineering a Compiler"