-
Engineering a Compiler (Morgan Kaufmann) (Paperback)
Unavailable
Sorry we can't get this title, the button below links through to AbeBooks who may have this title (opens in new window).
|- Also available in...
- Hardback $83.07
Short Description for Engineering a CompilerConveys both the art and the science of compiler construction and shows best practice algorithms for the problems inside a compiler. This work focuses on the back end of the compiler-reflecting the focus of research and development. It introduces readers to optimization through data-flow analysis, SSA form and a selection of scalar optimizations.
Full description- Publisher: Morgan Kaufmann Publishers In
- Published: 02 December 2003
- Format: Paperback 801 pages
- See: Full bibliographic data
- Categories: Compilers | Systems Analysis & Design | Computer Architecture & Logic Design
- ISBN 13: 9781558606999 ISBN 10: 1558606998
- Sales rank: 628,246
Other books
Full description for Engineering a Compiler
As computing has changed, so has the role of both the compiler and the compiler writer. The proliferation of processors, environments, and constraints demands an equally large number of compilers. To adapt, compiler writers re-target code generators, add optimizations, and work on issues such as code space or power consumption. "Engineering a Compiler" re-balances the curriculum for an introductory course in compiler construction to reflect the issues that arise in today's practice. Authors Keith Cooper and Linda Torczon convey both the art and the science of compiler construction and show best practice algorithms for the major problems inside a compiler. This work: focuses on the back end of the compiler-reflecting the focus of research and development over the last decade; applies the well-developed theory behind scanning and parsing to introduce concepts that play a critical role in optimization and code generation; introduces the student to optimization through data-flow analysis, SSA form, and a selection of scalar optimizations; builds on this background to teach modern methods in code generation: instruction selection, scheduling, and register allocation; presents examples in one of several different programming languages in order to best illustrate the concept; and, explores the design space by examining how problems have been solved and by identifying the constraints that have made each of these solutions attractive.

