[发明专利]中间语言的延迟跳转指令二进制翻译实现的方法无效
申请号: | 200910055218.6 | 申请日: | 2009-07-23 |
公开(公告)号: | CN101604255A | 公开(公告)日: | 2009-12-16 |
发明(设计)人: | 管海兵;梁阿磊;左保京;章一超;孙廷韬 | 申请(专利权)人: | 上海交通大学 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 上海交达专利事务所 | 代理人: | 王锡麟;王桂忠 |
地址: | 200240*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及的是一种电信技术领域的中间语言的延迟跳转指令二进制翻译实现的方法。当二进制翻译器遇到延迟跳转指令时,保存跳转的目的地址为addr,值为用当前PC值加上指令中对应位表示的跳转偏移值;当annul bit为0时,先翻译延迟槽中的指令为对应的中间指令,再翻译当前的这条Branch指令;当annul bit为1,即不跳转则忽略延迟槽中的指令时,先以相反的条件翻译Branch指令,目的地址为延迟槽后的第一条指令;然后翻译延迟槽中的指令为中间指令;最后再在中间指令基本块中添加一条直接跳转指令,目的地址为先前保存的addr;将中间指令基本块提交给二进制翻译器后端翻译为后端指令执行。本发明执行准确,效率高,在二进制翻译领域具有通用性。 | ||
搜索关键词: | 中间 语言 延迟 跳转 指令 二进制 翻译 实现 方法 | ||
【主权项】:
1、一种中间语言的延迟跳转指令二进制翻译实现的方法,其特征在于,利用独立于源机器语言和目标机器语言的中间语言来正确地表达源平台延迟跳转指令的语义,然后提交给后端翻译为目标机器语言执行,当二进制翻译器遇到延迟跳转指令时,翻译中间指令的步骤如下:步骤一,保存跳转的目的地址为addr,值为用当前PC值加上指令中对应位表示的跳转偏移值;步骤二,当annul bit为0时,先翻译延迟槽中的指令为对应的中间指令,再翻译当前的这条Branch指令;步骤三,当annul bit为1,即不跳转则忽略延迟槽中的指令时,先以相反的条件翻译Branch指令,目的地址为延迟槽后的第一条指令;然后翻译延迟槽中的指令为中间指令;最后再在中间指令基本块中添加一条直接跳转指令,目的地址为先前保存的addr;步骤四,将中间指令基本块提交给二进制翻译器后端翻译为后端指令执行。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200910055218.6/,转载请声明来源钻瓜专利网。
- 上一篇:一种获得程序模块间调用关系的方法及装置
- 下一篇:光学撷取模块信号处理方法