MTU Library Catalogue

Syndetics cover image
Image from Syndetics

Engineering a compiler / Keith D. Cooper and Linda Torczon.

By: Cooper, Keith D. (Keith Daniel).
Contributor(s): Torczon, Linda.
Material type: materialTypeLabelBookPublisher: San Francisco : Morgan Kaufmann, c2004Description: xxx, 801 p. : ill. ; 24 cm. + hbk.ISBN: 155860698X.Subject(s): Compilers (Computer programs)DDC classification: 005.453
Contents:
Overview of compilation -- Scanning -- Parsing -- Context-sensitive analysis -- Intermediate representation -- The procedure abstraction -- Code shape -- Introduction to code optimization -- Data flow analysis -- Scalar Optimizations -- Instruction selection -- Instructing scheduling -- Register allocation -- ILOC -- Data structures.

Enhanced descriptions from Syndetics:

The proliferation of processors, environments, and constraints on systems has cast compiler technology into a wider variety of settings, changing the compiler and compiler writer's role. No longer is execution speed the sole criterion for judging compiled code. Today, code might be judged on how small it is, how much power it consumes, how well it compresses, or how many page faults it generates. In this evolving environment, the task of building a successful compiler relies upon the compiler writer's ability to balance and blend algorithms, engineering insights, and careful planning. Today's compiler writer must choose a path through a design space that is filled with diverse alternatives, each with distinct costs, advantages, and complexities. Engineering a Compiler explores this design space by presenting some of the ways these problems have been solved, and the constraints that made each of those solutions attractive. By understanding the parameters of the problem and their impact on compiler design, the authors hope to convey both the depth of the problems and the breadth of possible solutions. Their goal is to cover a broad enough selection of material to show readers that real tradeoffs exist, and that the impact of those choices can be both subtle and far-reaching. Authors Keith Cooper and Linda Torczon convey both the art and the science of compiler construction and show best practice algorithms for the major passes of a compiler. Their text re-balances the curriculum for an introductory course in compiler construction to reflect the issues that arise in current practice.

Includes bibliographical references (p. 703-724) and index.

Overview of compilation -- Scanning -- Parsing -- Context-sensitive analysis -- Intermediate representation -- The procedure abstraction -- Code shape -- Introduction to code optimization -- Data flow analysis -- Scalar Optimizations -- Instruction selection -- Instructing scheduling -- Register allocation -- ILOC -- Data structures.

Author notes provided by Syndetics

Dr. Cooper, 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.

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.