New optimization book by Muchnik (Preston Briggs)
3 Oct 1997 12:21:47 -0400

          From comp.compilers

Related articles
New optimization book by Muchnik (1997-10-03)
| List of all articles for this month |

From: (Preston Briggs)
Newsgroups: comp.compilers
Date: 3 Oct 1997 12:21:47 -0400
Organization: Compilers Central
Keywords: optimize, books

For everyone whose been asking about an up-to-date book
on compiler optimization...

I got this announcement of Steve Muchncik's new book.
I saw a preprint of the book at PLDI and thought it looked quite good.

Preston Briggs


This is to let you know that my third book "Advanced Compiler Design and
Implementation," published by Morgan Kaufmann in San Francisco, has recently
come onto the market.

It begins with a Foreword by Susan Graham, followed by the Preface and 21
chapters as follows:

    Chapter 1. Introduction to Advanced Topics
    Chapter 2. Informal Compiler Algorithm Notation (ICAN)
    Chapter 3. Symbol Table Structure
    Chapter 4. Intermediate Representations
    Chapter 5. Run-Time Support
    Chapter 6. Producing Code Generators Automatically
    Chapter 7. Control-Flow Analysis
    Chapter 8. Data-Flow Analysis
    Chapter 9. Dependence Analysis & Dependence Graphs
    Chapter 10. Alias Analysis
    Chapter 11. Introduction to Optimization
    Chapter 12. Early Optimizations
    Chapter 13. Redundancy Elimination
    Chapter 14. Loop Optimizations
    Chapter 15. Procedure Optimizations
    Chapter 16. Register Allocation
    Chapter 17. Code Scheduling
    Chapter 18. Control-Flow and Low-Level Optimizations
    Chapter 19. Interprocedural Analysis & Optimization
    Chapter 20. Optimization for the Memory Hierarchy
    Chapter 21. Case Studies of Compilers and Future Trends

Chapter 1 introduces the subject matter and discusses the structure of
highly optimizing compilers. Chapter 2 describes a convenient
notation for writing programs, called ICAN, that is used throughout
the remainder of the text. Chapters 3 through 6 review fundamental
topics in compiler construction and highlight advanced issues in each
topic area, such as symbol-table structure for languages with imports
and exports, automatic generation of code generators, supporting
dynamically loaded objects, and static single-assignment form.

Chapters 7 through 10 cover the techniques that form the basis for
optimization and Chapters 11 through 18 cover intraprocedural
optimization in detail. Chapter 19 focuses on interprocedural
analysis and optimization and Chapter 20 focuses on optimization for
the memory hierarchy.

Finally, Chapter 21 discusses in detail four families of commercial
highly optimizing compilers: Sun's for SPARC, IBM's for POWER and
PowerPC, DEC's for Alpha, and Intel's for the 386 architecture family.

Each chapter ends with a wrap-up section, a further-reading section, and

The chapters are followed by three appendixes, an extensive
bibliography, a subject index and an index of mathematical formulas,
ICAN procedures, and major ICAN data structures.

Additional material on object-code compilation is available on the
publisher's WWW site,, as is information on
accessing software resources described in Appendix C. In particular,
the Web page for the book is


Errata and other materials related to the book will appear on the Web
site soon. In the meantime, I will be happy to send you the latest
version of the errata as a PostScript file. Also, I encourage you to
send me any errors you discover by return mail.

                  -- Steve Muchnick

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.