[发明专利]一种基于代数演算的中间代码优化系统有效
申请号: | 201610459128.3 | 申请日: | 2016-06-22 |
公开(公告)号: | CN106126312B | 公开(公告)日: | 2019-05-14 |
发明(设计)人: | 黄滟鸿;卜祥兴;史建琦;何积丰;李昂;方徽星 | 申请(专利权)人: | 华东师范大学 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京辰权知识产权代理有限公司 11619 | 代理人: | 张斯盾 |
地址: | 200062 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于代数演算的中间代码优化系统,所述系统包括高级语言转换单元、代数优化单元及目标代码生成单元。其中高级语言转换单元用于完成对输入代码到规范型中间代码的转换;代数优化单元用于完成对所述规范性中间代码的优化;目标代码生成单元用于生成目标代码。本发明所述基于代数演算的中间代码优化系统通过给定的优化策略,对转换成规范型的中间代码进行优化。优化策略可以由用户自定义,提高优化效率;优化过程则由所述系统自动进行,实现自动化中间代码优化。 | ||
搜索关键词: | 一种 基于 代数 演算 中间 代码 优化 系统 | ||
【主权项】:
1.一种基于代数演算的中间代码优化系统,包括:高级语言转换单元,用于将输入的源代码、其他形式的中间语言转换成为所述优化系统使用的中间语言,并将输出作为代数优化单元的输入,所述其他形式的中间语言指与所述优化系统所使用的中间语言不同的中间语言;代数优化单元,用于向用户提供优化策略定制,允许用户提供目标平台硬件特性,定制特别的优化策略,使用优化策略对所述高级语言转换单元输出的中间语言进行优化,得到经过优化的中间代码;目标代码生成单元,用于将经过优化的中间代码生成目标平台的可执行机器码,其特征在于,优化策略通过以下方式得到:对LLVM IR程序进行控制流和数据流分析,总结出优化目标并转换为代数规则;对程序进行控制流分析得到程序的控制流结构,得到循环结构后通过把循环转换为有限条件选择来消除循环;其中,优化规则为代数等式的形式,等式左边是优化前的结构,等式右边是优化后的结构;对程序进行到达定值数据流分析,得到程序中每个点处的变量值,因此可以对程序进行合并已知量的优化操作;此时优化规则表现为代数等式的形式,等式左侧为变量组成的表达式,而等式右侧为左侧表达式当前的值,此优化规则可减少公共表达式计算的次数。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东师范大学,未经华东师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610459128.3/,转载请声明来源钻瓜专利网。