一种基于代数演算的中间代码优化方法与流程

文档序号:11864468阅读:来源:国知局

技术特征:

1.一种基于代数演算的中间代码优化方法,其特征在于,包括:

高级语言转换步骤,将输入的源代码、其他形式的中间语言程序转换成为所述优化方法使用的中间语言程序,所述其他形式的中间语言指与所述优化方法所使用的中间语言不同的中间语言;

优化步骤,向用户提供优化策略定制,允许用户提供目标平台硬件特性,定制特别的优化策略,使用优化策略对所述高级语言转换步骤的中间语言进行优化,得到经过优化的中间代码;

目标代码生成步骤,将经过优化的中间代码生成目标平台的可执行机器码。

2.如权利要求1所述的基于代数演算的中间代码优化方法,其特征在于,所述优化步骤中向用户提供优化策略定制包括:

对优化后的中间语言程序进行控制流和数据流分析,总结出优化目标并转换为代数规则。

3.如权利要求2所述的基于代数演算的中间代码优化方法,其特征在于,所述优化目标包括消除复杂算子或消除循环冗余。

4.如权利要求2所述的基于代数演算的中间代码优化方法,其特征在于,对优化后的中间语言程序进行控制流分析得到该程序的循环结构,通过把所述循环转换为有限条件选择来消除循环。

5.如权利要求4所述的基于代数演算的中间代码优化方法,其特征在于,所述代数规则为代数等式的形式,等式左边是优化前的结构,等式右边是优化后的结构。

6.如权利要求2所述的基于代数演算的中间代码优化方法,其特征在于,对所述中间语言程序进行到达定值数据流分析,得到该程序中每个点处的变量值,从而对所述程序进行合并已知量的优化操作。

7.如权利要求6所述的基于代数演算的中间代码优化方法,其特征在于,此时代数规则表现为代数等式的形式,等式左侧位变量组成的表达式,而等式右侧为左侧表达式当前的值,此优化规则减少公共表达式计算的次数。

8.如权利要求1所述的基于代数演算的中间代码优化方法,其特征在于,所述优化步骤中向用户提供优化策略定制包括:

对优化后中间语言程序进行大量的仿真实验,分析实验结果得出优化目标并转换为代数规则。

9.如权利要求8所述的基于代数演算的中间代码优化方法,其特征在于,不同程序的应用场景不同,利用程序仿真模拟运行场景,收集程序运行时信息,制定优化方向,使得优化更符合当前待优化程序的特点。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1