寄存器窗口切换在二进制翻译中的实现方法

    公开(公告)号:CN101620546B

    公开(公告)日:2013-03-27

    申请号:CN200910056334.X

    申请日:2009-08-13

    Abstract: 本发明涉及一种计算机技术领域的寄存器窗口切换技术在动态二进制翻译中的实现方法,包括如下步骤:用一段连续内存空间对应源平台上的所有寄存器窗口;用一个虚拟寄存器保存源平台上当前寄存器窗口在对应的模拟内存空间中的地址,用另外的固定的内存空间模拟与寄存器窗口无关的控制/状态寄存器和全局寄存器;用二级寻址的方式来确定源平台寄存器在模拟内存中的位置;在翻译器前端翻译每条寄存器窗口切换指令时动态调整虚拟寄存器的值。本发明采用两级的寻址方式使得每条寄存器窗口切换指令在翻译成中间指令时只需要调整一个虚拟寄存器的值,有效地减少了内存访问的次数,从而提高了翻译后的目标代码的执行效率。

    寄存器窗口切换在二进制翻译中的实现方法

    公开(公告)号:CN101620546A

    公开(公告)日:2010-01-06

    申请号:CN200910056334.X

    申请日:2009-08-13

    Abstract: 本发明涉及一种计算机技术领域的寄存器窗口切换技术在动态二进制翻译中的实现方法,包括如下步骤:用一段连续内存空间对应源平台上的所有寄存器窗口;用一个虚拟寄存器保存源平台上当前寄存器窗口在对应的模拟内存空间中的地址,用另外的固定的内存空间模拟与寄存器窗口无关的控制/状态寄存器和全局寄存器;用二级寻址的方式来确定源平台寄存器在模拟内存中的位置;在翻译器前端翻译每条寄存器窗口切换指令时动态调整虚拟寄存器的值。本发明采用两级的寻址方式使得每条寄存器窗口切换指令在翻译成中间指令时只需要调整一个虚拟寄存器的值,有效地减少了内存访问的次数,从而提高了翻译后的目标代码的执行效率。

    中间语言的延迟跳转指令二进制翻译实现的方法

    公开(公告)号:CN101604255A

    公开(公告)日:2009-12-16

    申请号:CN200910055218.6

    申请日:2009-07-23

    Abstract: 本发明涉及的是一种电信技术领域的中间语言的延迟跳转指令二进制翻译实现的方法。当二进制翻译器遇到延迟跳转指令时,保存跳转的目的地址为addr,值为用当前PC值加上指令中对应位表示的跳转偏移值;当annul bit为0时,先翻译延迟槽中的指令为对应的中间指令,再翻译当前的这条Branch指令;当annul bit为1,即不跳转则忽略延迟槽中的指令时,先以相反的条件翻译Branch指令,目的地址为延迟槽后的第一条指令;然后翻译延迟槽中的指令为中间指令;最后再在中间指令基本块中添加一条直接跳转指令,目的地址为先前保存的addr;将中间指令基本块提交给二进制翻译器后端翻译为后端指令执行。本发明执行准确,效率高,在二进制翻译领域具有通用性。

Patent Agency Ranking