[发明专利]基于执行树深度的二进制翻译方法和装置在审
申请号: | 201410688378.5 | 申请日: | 2014-11-26 |
公开(公告)号: | CN104375879A | 公开(公告)日: | 2015-02-25 |
发明(设计)人: | 康烁 | 申请(专利权)人: | 康烁 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/32 |
代理公司: | 北京恒都律师事务所 11395 | 代理人: | 李向东 |
地址: | 100084 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于执行树深度的二进制翻译方法和装置。该方法包括在开始构造超级块时,执行树深度初始化为0,并获取预设的执行树深度阈值,从预设的起始地址所在的基本块开始翻译,在翻译时,若翻译的基本块的当前指令为直接跳转指令,则翻译直接跳转指令进入的基本块;若翻译的基本块的当前指令为条件跳转指令,则翻译条件跳转指令跳转后的基本块和条件跳转指令的下一个基本块,并且将执行树深度加1;若翻译的基本块的当前指令为函数调用指令,则翻译函数调用指令对应的函数,并且将执行树深度加1,当执行树深度达到执行树深度阈值时,翻译结束,翻译的所有基本块构成一个超级块。通过本发明,能够提升执行翻译程序的性能。 | ||
搜索关键词: | 基于 执行 深度 二进制 翻译 方法 装置 | ||
【主权项】:
一种基于执行树深度的二进制翻译方法,其特征在于,包括:步骤S0:开始构造超级块,将执行树深度初始化为0,并获取预设的执行树深度阈值,从预设的起始地址所在的基本块开始翻译;步骤S1:翻译获取到的基本块;步骤S2:若翻译的基本块的当前指令为直接跳转指令,则获取所述直接跳转指令进入的基本块,并返回至步骤S1;步骤S3:若翻译的基本块的当前指令为条件跳转指令,则获取所述条件跳转指令跳转后的基本块和所述条件跳转指令的下一个基本块,并且将执行树深度加1,返回至步骤S1; 步骤S4:若翻译的基本块的当前指令为函数调用指令,则获取所述函数调用指令对应的函数作为基本块,并且将执行树深度加1,返回至步骤S1,其中,在每次执行树深度加1之后,判断当前的执行树深度是否达到所述执行树深度阈值,若所述执行树深度达到所述执行树深度阈值,则翻译结束,翻译的所有基本块构成一个超级块。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于康烁,未经康烁许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410688378.5/,转载请声明来源钻瓜专利网。