Engineering a Compiler :International Student Edition

Publication subTitle :International Student Edition

Author: Cooper   Keith;Torczon   Linda  

Publisher: Elsevier Science‎

Publication year: 2003

E-ISBN: 9780080472676

P-ISBN(Paperback): 9781558606982

P-ISBN(Hardback):  9781558606982

Subject: F0 Economics;F016 微观经济学;TP1 自动化基础理论;TP3 Computers

Language: ENG

Access to resources Favorite

Disclaimer: Any content in publications that violate the sovereignty, the constitution or regulations of the PRC is not accepted or approved by CNPIEC.

Description

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

Chapter

Contents

pp.:  10 – 22

Preface

pp.:  22 – 32

1. Overview of Compilation

pp.:  32 – 58

2. Scanning

pp.:  58 – 104

3. Parsing

pp.:  104 – 182

4. Context-Sensitive Analysis

pp.:  182 – 240

5. Intermediate Representations

pp.:  240 – 282

6. The Procedure Abstraction

pp.:  282 – 338

7. Code Shape

pp.:  338 – 414

8. Introduction to Code Optimization

pp.:  414 – 464

9. Data-Flow Analysis

pp.:  464 – 522

10. Scalar Optimizations

pp.:  522 – 576

11. Instruction Selection

pp.:  576 – 616

12. Instruction Scheduling

pp.:  616 – 650

13. Register Allocation

pp.:  650 – 690

Appendix A: ILOC

pp.:  690 – 704

Appendix B: Data Structures

pp.:  704 – 756

Exercises

pp.:  756 – 810

Index

pp.:  810 – 834

The users who browse this book also browse


No browse record.