1. 0. 译者总结
  2. 1. 编译器概览
    ❱
    1. 1.1 介绍
    2. 1.2 编译器结构
    3. 1.3 转换概览
    4. 1.4 工程
    5. 1.5 总结与展望
  3. 2. Scanners
    ❱
    1. 2.1 介绍
    2. 2.2 识别单词
    3. 2.3 正则表达式
    4. 2.4 从正则表达式到 Scanner
    5. 2.5 实现 Scanners
    6. 2.6 高级主题
    7. 2.7 总结与展望
  4. 3. Parsers
    ❱
    1. 3.1 介绍
    2. 3.2 Expressing Syntax
    3. 3.3 Top-Down Parsing
    4. 3.4 Bottom-Up Parsing
    5. 3.5 Practical Issues
    6. 3.6 高级主题
  5. 4. Intermediate Representations
    ❱
    1. 4.1 介绍
    2. 4.2 IR 分类
    3. 4.3 图 IRs
    4. 4.4 线性 IRs
    5. 4.5 符号表
    6. 4.6 命名空间
    7. 4.7 内存中值的布局
    8. 4.8 总结与展望
  6. 5. Syntax-Deiven Translation
    ❱
    1. 5.1 介绍
    2. 5.2 北京
    3. 5.3 Syntax-Deriven Translation
    4. 5.4 Modeling the Naming Environment
    5. 5.5 Type Information
    6. 5.6 Storage Layout
    7. 5.7 高级主题
    8. 5.8 总结与展望
  7. 6. Implementing Procedures
    ❱
    1. 6.1 介绍
    2. 6.2 Background
    3. 6.3 Runtime Support for Naming
    4. 6.4 Passing values between procedures
    5. 6.5 Standardized Linkages
    6. 6.6 高级主题
    7. 6.7 总结与展望
  8. 7. Code Shape
    ❱
    1. 7.1 介绍
    2. 7.2 Arithmetic Operators
    3. 7.3 Access Methods for values
    4. 7.4 Boolean and Relational Operators
    5. 7.5 Control-Flow constructs
    6. 7.6 Operations on Strings
    7. 7.7 Procedure Calls
  9. 8. 优化介绍
    ❱
    1. 8.1 介绍
    2. 8.2 Background
    3. 8.3 Scope of Optimization
    4. 8.4 Local Optimization
    5. 8.5 Regional Optimization
    6. 8.6 Global Optimization
    7. 8.7 Interprocedural Optimization
    8. 8.8 总结与展望
  10. 9. 数据流分析
    ❱
    1. 9.1 介绍
    2. 9.2 Interative Data-Flow Analysis
    3. 9.3 Static Single-Assignment Form
    4. 9.4 Interprocedural Analysis
    5. 9.5 高级主题
    6. 9.6 总结与展望
  11. 10. Scalar Optimization
    ❱
    1. 10.1 介绍
    2. 10.2 Dead Code Elimination
    3. 10.3 Code Motion
    4. 10.4 Specialization
    5. 10.5 Redundancy Elimination
    6. 10.6 Enabling Other Transformations
    7. 10.7 高级主题
    8. 10.8 总结与展望
  12. 11. 指令选择
    ❱
    1. 11.1 Indroduction
    2. 11.2 Background
    3. 11.3 Selection via Peephole Optimization
    4. 11.4 Selection via Tree-Pattern Matching
    5. 11.5 高级主题
    6. 11.6 总结与展望
  13. 12. 指令调度
    ❱
    1. 12.1 介绍
    2. 12.2 Background
    3. 12.3 Local Scheduling
    4. 12.4 Regional Scheduling
    5. 12.5 高级主题
    6. 12.6 总结与展望
  14. 13. 寄存器分配
    ❱
    1. 13.1 介绍
    2. 13.2 Background
    3. 13.3 Local Register Allocation
    4. 13.4 Global Allocation via Coloring
    5. 13.5 高级主题
    6. 13.6 总结与展望
  15. 14. 运行时优化
    ❱
    1. 14.1 介绍
    2. 14.2 Background
    3. 14.3 Hot-Trace Optimization
    4. 14.4 Hot-Method Optimization
    5. 14.5 高级主题
    6. 14.6 总结与展望

Engineering a Compiler


typora-copy-images-to: assets/${filename}