Matches in SemOpenAlex for { <https://semopenalex.org/work/W2460280200> ?p ?o ?g. }
- W2460280200 abstract "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.Focuses on the back end of the compiler-reflecting the focus of research and development over the last decade. Uses the well-developed theory from 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, instruction scheduling, and register allocation. Presents examples in several different programming languages in order to best illustrate the concept. Provides end-of-chapter exercises, with on-line solutions available to instructors.Table of ContentsOverview of Compilation; Scanning; Parsing; Context-Sensitive Analysis; Intermediate Representations; Procedure Abstraction; Code Shape; Introduction to Code Optimization; Data-Flow Analysis; Transformations; Instruction Selection; Instruction Scheduling; Register Allocation; Appendix A: ILOC; Appendix B: Data Structures; Appendix C: Abbreviations, Acronyms, and Glossary" @default.
- W2460280200 created "2016-07-22" @default.
- W2460280200 creator A5014568865 @default.
- W2460280200 creator A5073381111 @default.
- W2460280200 date "2003-12-02" @default.
- W2460280200 modified "2023-09-26" @default.
- W2460280200 title "Engineering a Compiler: International Student Edition" @default.
- W2460280200 cites W1491178396 @default.
- W2460280200 cites W1493792056 @default.
- W2460280200 cites W1498962072 @default.
- W2460280200 cites W1500117749 @default.
- W2460280200 cites W1502293651 @default.
- W2460280200 cites W1503886226 @default.
- W2460280200 cites W1509600745 @default.
- W2460280200 cites W1511846405 @default.
- W2460280200 cites W1522286888 @default.
- W2460280200 cites W1532966629 @default.
- W2460280200 cites W1537956714 @default.
- W2460280200 cites W1543337075 @default.
- W2460280200 cites W1546258094 @default.
- W2460280200 cites W1563342424 @default.
- W2460280200 cites W1570445666 @default.
- W2460280200 cites W1577524924 @default.
- W2460280200 cites W1587655883 @default.
- W2460280200 cites W1591459527 @default.
- W2460280200 cites W1601309974 @default.
- W2460280200 cites W1603773328 @default.
- W2460280200 cites W1631331437 @default.
- W2460280200 cites W1655990431 @default.
- W2460280200 cites W1676883323 @default.
- W2460280200 cites W1770006921 @default.
- W2460280200 cites W181259032 @default.
- W2460280200 cites W1829244603 @default.
- W2460280200 cites W1855084269 @default.
- W2460280200 cites W1964071625 @default.
- W2460280200 cites W1964483599 @default.
- W2460280200 cites W1965601529 @default.
- W2460280200 cites W1966340850 @default.
- W2460280200 cites W1966449927 @default.
- W2460280200 cites W1966708457 @default.
- W2460280200 cites W1966831167 @default.
- W2460280200 cites W1968594561 @default.
- W2460280200 cites W1968787980 @default.
- W2460280200 cites W1969000084 @default.
- W2460280200 cites W1969519006 @default.
- W2460280200 cites W1970448777 @default.
- W2460280200 cites W1970961429 @default.
- W2460280200 cites W1972110996 @default.
- W2460280200 cites W1975914482 @default.
- W2460280200 cites W1977834052 @default.
- W2460280200 cites W1978885908 @default.
- W2460280200 cites W1979242329 @default.
- W2460280200 cites W1982205631 @default.
- W2460280200 cites W1982842799 @default.
- W2460280200 cites W1983156473 @default.
- W2460280200 cites W1983166063 @default.
- W2460280200 cites W1984742153 @default.
- W2460280200 cites W1984914680 @default.
- W2460280200 cites W1985245264 @default.
- W2460280200 cites W1986033227 @default.
- W2460280200 cites W1987077206 @default.
- W2460280200 cites W1987225815 @default.
- W2460280200 cites W1991380088 @default.
- W2460280200 cites W1991570511 @default.
- W2460280200 cites W1991670415 @default.
- W2460280200 cites W1991779584 @default.
- W2460280200 cites W1994334933 @default.
- W2460280200 cites W1994584977 @default.
- W2460280200 cites W1995039734 @default.
- W2460280200 cites W1996146601 @default.
- W2460280200 cites W1996659106 @default.
- W2460280200 cites W1996892501 @default.
- W2460280200 cites W1997230820 @default.
- W2460280200 cites W1998709584 @default.
- W2460280200 cites W1998956056 @default.
- W2460280200 cites W1999506614 @default.
- W2460280200 cites W1999961006 @default.
- W2460280200 cites W2000951709 @default.
- W2460280200 cites W2002089154 @default.
- W2460280200 cites W2002749185 @default.
- W2460280200 cites W2002771912 @default.
- W2460280200 cites W2003312024 @default.
- W2460280200 cites W2004636596 @default.
- W2460280200 cites W2004807513 @default.
- W2460280200 cites W2004976090 @default.
- W2460280200 cites W2005907808 @default.
- W2460280200 cites W2005985523 @default.
- W2460280200 cites W2007123446 @default.
- W2460280200 cites W2007130296 @default.
- W2460280200 cites W2008441811 @default.
- W2460280200 cites W2008764415 @default.
- W2460280200 cites W2008913431 @default.
- W2460280200 cites W2009911326 @default.
- W2460280200 cites W2010194128 @default.
- W2460280200 cites W2010452422 @default.
- W2460280200 cites W2010459485 @default.
- W2460280200 cites W2010634113 @default.
- W2460280200 cites W2011725207 @default.
- W2460280200 cites W2013001743 @default.
- W2460280200 cites W2013041359 @default.