一种二进制翻译的寄存器映射方法技术

技术编号:37671115 阅读:20 留言:0更新日期:2023-05-26 04:32
本发明专利技术公开了一种二进制翻译的寄存器映射方法,其方法包括:获取目标平台中预设数量n的约定寄存器作为专用寄存器;获取源平台中通用寄存器的使用频率,将通用寄存器按使用频率降序排列;将各专用寄存器与前n个通用寄存器一一映射;本发明专利技术通过将内存访问操作转化为寄存器访问操作,有效提高了二进制翻译的总体性能,提高了翻译生成代码的质量。提高了翻译生成代码的质量。提高了翻译生成代码的质量。

【技术实现步骤摘要】
一种二进制翻译的寄存器映射方法


[0001]本专利技术涉及一种二进制翻译的寄存器映射方法,属于计算机


技术介绍

[0002]动态二进制翻译旨在将源架构指令翻译为目标架构指令,以达到二进制软件跨架构兼容运行的目的。在动态翻译过程中,同时需要将源架构资源,如内存、寄存器等,映射到目标架构。由于源架构与目标架构寄存器数量、约定存在差异,翻译系统设计虚拟寄存器实现源寄存器功能。
[0003]QEMU作为最为流行的二进制翻译器,其基于转移控制指令将源ISA应用程序划分为基本块,采用边翻译边执行的及时翻译策略。为兼顾多平台处理器兼容运行,采用一段虚拟内存单元作为虚拟寄存器,实现源架构寄存器功能,并通过一个数据结构维护虚拟寄存器状态。
[0004]在每个基本块的翻译过程中,QEMU为采用虚拟寄存器翻译源汇编指令语义,按需求分配目标平台寄存器作为中间寄存器,将源汇编指令中对寄存器的访问翻译为,对目标平台虚拟寄存器,即虚拟内存单元的访问。由此,该内存模拟寄存器的方法,将源寄存器访问指令,翻译为了内存访问指令。该方法虽具有较强可移植性,但本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种二进制翻译的寄存器映射方法,其特征在于,包括:获取目标平台中预设数量n的约定寄存器作为专用寄存器;获取源平台中通用寄存器的使用频率,将通用寄存器按使用频率降序排列;将各专用寄存器与前n个通用寄存器一一映射。2.根据权利要求1所述的一种二进制翻译的寄存器映射方法,其特征在于,所述目标平台采用申威平台,所述源平台采样x86平台。3.根据权利要求1所述的一种二进制翻译的寄存器映射方法,其特征在于,所述约定寄存器为callee saved属性的寄存器。4.一种二进制翻译的寄存器映射装置,其特征在于,所述装置包括:寄存器选取模块,用于获取目标平台...

【专利技术属性】
技术研发人员:罗巧玲林媛谢汶兵费扬高清
申请(专利权)人:无锡先进技术研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1