Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Building an Optimizing Compiler

Buy
Building an Optimizing Compiler, 9781555581794 (155558179X), Digital Press, 1998

This book describes one design for the optimization and code-generation phases of such a compiler. Many compiler books are available for describing the analysis of programming languages. They emphasize the processes of lexical analysis, parsing, and semantic analysis. Several books are also available for describing compilation processes for vector and parallel processors. This book describes the compilation of efficient programs for a single superscalar RISC processor, including the ordering and structure of algorithms and efficient data structures.

The book is presented as a high-level design document. There are two reasons for this. Initially, I attempted to write a book that presented all possible alternatives so that the reader could make his or her own choices of methods to use. This was too bulky, as the projected size of the volume was several thousand pages—much too large for practical purposes. There are a large number of different algorithms and structures in an optimizing compiler. The choices are interconnected, so an encyclopedic approach to optimizing compilers would not address some of the most difficult problems.

Second, I want to encourage this form of design for large software processes. The government uses a three-level documentation system for describing software projects: The A-level documents are overview documents that describe a project as a whole and list its individual pieces. B-level documents describe the operation of each component in sufficient detail that the reader can understand what each component does and how it does it, whereas the C-level documents are low-level descriptions of each detail.

As a developer I found this structure burdensome because it degenerated into a bureaucratic device involving large amounts of paper and little content. However, the basic idea is sound. This book will describe the optimization and code-generation components of a compiler in sufficient detail that the reader can implement these components if he or she sees fit. Since I will be describing one method for each of the components, the interaction between components can be examined in detail so that all of the design and implementation issues are clear.

Each chapter will include a section describing other possible implementation techniques. This section will include bibliographic information so that the interested reader can find these other techniques.

(HTML tags aren't allowed.)

Accessing AutoCAD Architecture 2011
Accessing AutoCAD Architecture 2011

Accessing AutoCAD Architecture 2011, 9th edition, is a comprehensive presentation of the tools included in AutoCAD Architecture 2011. The format of the text includes the introduction of tools followed by an explanation of the options of the command and how it is used in the development of drawings. A tool access table is provided for...

From Bash to Z Shell: Conquering the Command Line
From Bash to Z Shell: Conquering the Command Line

A shell is a sophisticated way to control your computer—Unix, Linux, Microsoft Windows, Mac OS X, and others. If you do more than the most basic operations, you can do many of them more powerfully and quickly with a shell and your keyboard than by using a mouse.

The history of shells goes back some 30 years. In the early...

Mechanical Science: v. II
Mechanical Science: v. II

The syllabus of Mechanical Science-II as designed by WBUT explains the important Chapters of Thermodynamics and Fluid Mechanics. The book covers all the topics of the syllabus in a well explained and easily understandable manner to the students. In addition to this, many numerical examples have been worked out for each chapter. Multiple...


MySQL Language Reference
MySQL Language Reference

With more than 4 million active installations, MySQL is the world's most popular open-source database.

Known for its speed, high reliability, and ease of use, MySQL is rapidly becoming a low-cost alternative to high-priced, high-maintenance database systems from Oracle, IMB and Microsoft-and it already has more users than any of these...

Beginning iPhone Development with Swift: Exploring the iOS SDK
Beginning iPhone Development with Swift: Exploring the iOS SDK

The team that brought you the bestselling Beginning iPhone Development, the book that taught the world how to program on the iPhone, is back again for Beginning iPhone Development with Swift.This definitive guide is up to date with Apple's new Swift programming language and the latest and greatest iOS 8 SDK, and Xcode...

Microsoft  Visual Basic  Design Patterns (Microsoft Professional Series)
Microsoft Visual Basic Design Patterns (Microsoft Professional Series)
Microsoft  Visual Basic  Design Patterns focuses on how to capitalize on the powerful object-oriented capabilities of Visual Basic. Specifically, the book introduces and explains how to employ a set of reusable software design patterns available within Visual Basic. Design patterns take objects to the next level, encouraging both reuse...
©2019 LearnIT (support@pdfchm.net) - Privacy Policy