东南大学 编译原理 课件 Cp9.ppt
上传人:yy****24 上传时间:2024-09-10 格式:PPT 页数:117 大小:4.3MB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

东南大学 编译原理 课件 Cp9.ppt

东南大学编译原理课件Cp9.ppt

预览

免费试读已结束,剩余 107 页请下载文档后查看

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Chapter9CodeOptimizationOverviewPurposeofCodeOptimizerPlacesforPotentialImprovementsPlacesforPotentialImprovementsOrganizationofthecodeOptimizerBasicblocksAnExampleTheUseofaNameLivevariablePartitionintoBasicBlocksDeterminationofLeadersofBasicBlocksPartitionintoBasicBlocksAnExample(1)ReadX(2)ReadYFlowgraphFlowGraphFlowGraphFlowGraphLoopsLoopsLoopsDominator一棵开花的树(作者:席慕容)BackEdgeFindAlltheLoopsinaFlowGraphFindAlltheLoopsinaFlowGraphFindAlltheLoopsinaFlowGraphOptimizationofBasicBlocksCommonSubexpressionEliminationAnExample(1)Pi:=3.14(2)T1:=6.28(3)T2:=R+r(4)A:=T1*T2(5)B:=A(6)T3:=6.28(7)T4:=R+r(8)T5:=T3*T4(9)T6:=R-r(10)B:=T5*T6CopyPropagationCopyPropagation(1)Pi:=3.14(2)T1:=6.28(3)T2:=R+r(4)A:=T1*T2(5)B:=A(6)T3:=T1(7)T4:=T2(8)T5:=T1*T2(9)T6:=R-r(10)B:=T5*T6DeadCodeElimination(1)Pi:=3.14(2)T1:=6.28(3)T2:=R+r(4)A:=T1*T2(5)B:=A(6)T3:=T1(7)T4:=T2(8)T5:=T1*T2(9)T6:=R-r(10)B:=T5*T6DAGDAGDAGDAGDAGAnExamplen1FindingLocalCommonSubexpressionsAnExampleDeadCodeEliminationRepresentationofArrayReferencesRepresentationofArrayReferencesRepresentationofArrayReferencesRepresentationofArrayReferencesRepresentationofArrayReferencesAnExampleAnExampleGeneratingCodefromDagsHeuristicOrderCodeOptimizationinaLoopPre-HeadersStrengthReductionInductionVariablesInductionVariablesAnExample(1)j:=1(2)i:=1(1)j:=1(2)i:=1(1)j:=1(2)i:=1(1)j:=1(2)i:=1(1)j:=1(2)i:=1AnotherExampleAnotherExampleIntroductiontoData-FlowAnalysisProgramPointProgramPointExecutionPathExecutionPathAnExampleProgramAnalysisAnExampleTheData-FlowAnalysisSchemaTheData-FlowAnalysisSchemaTheData-FlowAnalysisSchemaTransferFunctionsData-FlowSchemasonBasicBlocksData-FlowSchemasonBasicBlocksReachingDefinitionsReachingDefinitionsDetectingPossibleUsesBeforeDefinitionDetectingPossibleUsesBeforeDefinitionInaccuracybytraversingAllPathesConservatisminData-FlowAnalysisConservatisminData-FlowAnalysisConservatisminData-FlowAnalysisTransferEquationsforReachingDefinitionsTheTransferFunctionofaBasicBlockTheTransferFunctionofaBa