Chapter.13updated北京航空大学本科编译原理培训教程张莉.pptVIP

  • 14
  • 0
  • 约9.98千字
  • 约 39页
  • 2018-08-11 发布于江苏
  • 举报

Chapter.13updated北京航空大学本科编译原理培训教程张莉.ppt

第十三章 代码优化 下面的优化合理吗? int foo(int a) { int count = 0 ; for(int i = 1 ; i=100 ; i++){ count += i ; } return a + count ; } 优化方法的分类1: 与机器无关的优化技术 数据流分析 常量传播 公共子表达式删除 死代码删除 循环交换 代码内联等等 与机器相关的优化技术 面向超标量超流水线架构、VLIW或者EPIC架构的指令调度方法 面向SMP架构的同步负载优化方法 面向SIMD、MIMD或者SPMD架构的数据级并行优化方法等 优化方法的分类2: 局部优化技术 基本块内 例如,局部公共子表达式删除 全局优化技术 函数/过程内 跨越基本块 例如,全局数据流分析 跨函数优化技术 整个程序 例如,跨函数别名分析 ,逃逸分析 等 13.1.1 基本块的DAG图表示 赋值语句:a=b*(-c) + b*(-c) 13.1.2 消除局部公共子表达式 t1 := - c t2 := b * t1 t3 := - c t4 := b * t3 t5 := t2 + t4 a := t5 建立DAG图,例1 t1 := - c t2 := b * t1 t3 := - c t4 :=

文档评论(0)

1亿VIP精品文档

相关文档