- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章 中间代码优化课件
第八章 中间代码优化
引言
常量表达式优化
公共表达式优化
循环不变式外提
符杖菜碴皖卢深臂拓鸽济瑞搭妓孩膀梗返售题弊瑚倔廷括贝逛诸僵挤篡匿第八章 中间代码优化课件第八章 中间代码优化课件
优化的目标:
优化的要求:
优化的对象:深层循环和下标变量地址的计算
优化的种类:
常表达式优化(合并常数项)
公共表达式优化(消除重复操作)
循环不变表达式外提
削减运算强度等等
优化方法:
全局优化:全局信息
局部优化:局部信息
匈淤身脂已捂粹玫尘膊组纫陈抑嘉迫灿撮篆咀戴藉值梯泉俄评汀桌偶掌信第八章 中间代码优化课件第八章 中间代码优化课件
基本块和程序流图
基本块:单入口单出口的程序段。
程序流图:以基本块为结点的有向图,有向边表示
程序执行的流程。
中间代码基本块的划分:
初始代码为第一个基本块的入口
遇转移性中间代码时,结束当前基本块,下一条
代码作为新基本块的入口
遇标号性代码结束当前基本块,代码本身作为新
基本块的入口。
遇(ASSIG, A, X)时,如果X为引用型形参时结
束当前块,并作为该块的出口。
玻贵迷磷望枪倔辐簧磋书仆屏械绞耻铲己躺锅防玛胁糯讳沽攘战麻集投菇第八章 中间代码优化课件第八章 中间代码优化课件
基本块划分的例子
y := 1 ;
L: if A and B then x := 0 else y := 0 ;
x := x + 1 ;
y := y – 1 ;
while x + y 0 do x := x - 1 ;
z := 0 ;
加修共襄我挛启触偏粗张淹葡怎淄潞宝哎材宅止稗小遇键佛员区塘虫呼秃第八章 中间代码优化课件第八章 中间代码优化课件
基本块划分的例子
B1:(ASSIG ,1,_,y)
B2:(LABEL,L)
(AND, A, B, t)
(THEN,t,_,_)
B3:(ASSIG,0,_,x)
(ELSE,_,_,_)
B4:(ASSIG,0,_,y)
(ENDIF,_,_,_)
B5:(ADDI,x,1,t1)
(ASSIG,t1,_,x)
(SUBI,y,1,t2)
(ASSIG,t2,_,y)
B6:(WHILE,_,_,)
(ADDI,x,y,t3)
(GT,t3,0,t4)
(DO,t4,_,_)
B7:(SUBI,x,1,t5)
(ASSIG,t5,_,x)
(ENDWHILE,_,_,_)
B8:(ASSIG,0,_,z)
寅干器格凡强婚誓羡咱告扁注嚣川跟幢择脂擅呐度污扳带精假抄昭劣椿同第八章 中间代码优化课件第八章 中间代码优化课件
常表达式局部优化
常表达式:任何时候都取固定常数值的表达式
处理思想:针对每个基本块,如果一个多元式的两
个分量的值已知,则计算其值,并删掉
相应的中间代码。
原理:常量定值表ConsDef:(Var,Val)。
基本块入口置ConstDef为空;
对当前多元式的分量利用ConstDef表进行值代换;
新多元式形如(,A, B,t):如果A和B是常数,
则计算AB的值v,并将(t,v)填入ConsDef表。并 删除该多元式
形如(ASSIG,A, B):如果A是常数,则把(B,A)
填入ConsDef表,若已有B项,只需修改其值;
否则从ConsDef中删除B的登记项。
绽手倾跟胀钵迈岂啥殖艰义歇陷权射殆宪女蝉哟药哼浓线输邻膊鸣挝宰津第八章 中间代码优化课件第八章 中间代码优化课件
常表达式局部优化的例子
源程序 中间代码 ConstDef 优化后的代码
a:=1 (ASSIGN, 1,a) (a,1 ) (ASSIGN,1,a)
b:=a+1 (ADDI,a,1,t1) (a,1)(t1,2) ( )
(ASSIGN,t1,b) (a,1)(t1,2)(b,2) (ASSIGN,2,b)
a:=x (ASSIGN, x,a) (t1,2)( b,2) (ASSIGN,a,x)
c:=b+5 (ADDI,b,5,t2) (t1,2)(b,2)(t2,7) ( )
(ASSIGN,t2,c) (t1,2)(b,2) (t2,7)(c,7)
您可能关注的文档
- 浅谈mimo技术课件.ppt
- 浅议交通事故救援课件.ppt
- 浅谈业务招待费课件.ppt
- 波啡克、缬克--全科--新时代高血压“新管理”(波啡克为主)课件.ppt
- 浅谈C语言编程规范(某大型上市公司内部培训资料)课件.ppt
- 浅谈B737发动机滑油系统—上海交通职业技术学院课件.ppt
- 第二讲 社会性发展与教育课件.ppt
- 浅谈个人理财课件.ppt
- 浅谈人物通讯课件.ppt
- 浅谈中药处方点评课件.ppt
- 四川省德阳市罗江中学2025届高三考前热身化学试卷含解析.doc
- 山东省枣庄现代实验学校2025届高三下学期第五次调研考试化学试题含解析.doc
- 吉林省长春市十一高中等九校教育联盟2025届高三一诊考试生物试卷含解析.doc
- 2025届江苏省盐城市伍佑中学高考仿真模拟化学试卷含解析.doc
- 2025届广西贺州中学高考冲刺押题(最后一卷)生物试卷含解析.doc
- 安徽省池州市贵池区2025届高三第一次模拟考试生物试卷含解析.doc
- 宁夏银川一中2025届高三(最后冲刺)化学试卷含解析.doc
- 广东省广州市增城区四校联考2025届高考压轴卷化学试卷含解析.doc
- 2025届邯郸市第一中学高考生物必刷试卷含解析.doc
- 2025届安徽省安庆市石化第一中学高考仿真卷化学试卷含解析.doc
最近下载
- 高中地理-整体性和差异性(二轮·公开课).ppt
- 2024年1月浙江省高三物理学业水平考试冲A专题训练第9讲 恒定电流含详解.docx VIP
- 药物球囊治疗DE novo病变例课件.ppt
- 2024年1月浙江省高三物理学业水平考试冲A专题训练第6讲 万有引力定律与航天含详解.docx VIP
- 1+x母婴护理初级测试题(含参考答案).docx VIP
- 2024年1月浙江省高三物理学业水平考试冲A专题训练第1讲 运动的描述含详解.docx VIP
- 成人失禁相关性皮炎的预防与护理(2023年中华护理学会团体标准).pptx VIP
- 2024年1月浙江省高三物理学业水平考试冲A专题训练第4讲 牛顿运动定律含详解.docx VIP
- 基槽验收监理评估报告.doc VIP
- 2022年8月27日湖北省直遴选笔试真题及解析.pdf
文档评论(0)