检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:李男[1,2] 庞建民 LI Nan;PANG Jianmin(PLA Strategic Support Force Information Engineering University,Zhengzhou 450001,China;State Key Laboratory of Mathematical Engineering and Advanced Computing,Zhengzhou 450002,China)
机构地区:[1]战略支援部队信息工程大学,河南郑州450001 [2]数学工程与先进计算国家重点实验室,河南郑州450002
出 处:《国防科技大学学报》2021年第4期156-162,共7页Journal of National University of Defense Technology
基 金:国家自然科学基金资助项目(61802433)。
摘 要:动态二进制翻译在实现多源到多目标的程序翻译过程中,为屏蔽不同源平台间的硬件差异引入中间代码,采用内存虚拟策略进行实现,但同时带来中间代码膨胀问题。传统的中间代码优化方法主要采用对冗余指令进行匹配删除的方法。将优化重点聚焦在针对特殊指令匹配的中间表示规则替换上,提出了一种基于中间表示规则替换的二进制翻译中间代码优化方法。该方法针对中间代码膨胀所呈现的几种典型情景,描述了中间表示替换规则,并将以往应用在后端代码优化上的寄存器直接映射策略应用在此处。通过建立映射公式,实现了将原来的内存虚拟操作替换为本地寄存器操作,从而降低了中间代码膨胀率。使用SPEC CPU2006测试集进行了实验,验证了此优化方法的正确性和有效性。测试用例在优化前和优化后的执行结果一致,验证了优化方法的正确性;优化后测试用例的中间代码平均缩减率达到32.59%,验证了优化方法的有效性。In the process of realizing multi-source to multi-target program translation,the dynamic binary translation uses intermediate code to shield the hardware differences between different source platforms,and the memory virtual strategy is adopted to achieve the goal.As a result,it brings about the problem of intermediate code expansion.Traditional intermediate code optimization methods usually use the method of matching and deleting redundant instructions.The intermediate representation rule replacement for special instruction matching was focused on,and an intermediate code optimization method for binary translation based on intermediate representation rule replacement was proposed.This method described the corresponding intermediate representation replacement rules for several typical scenarios of intermediate code expansion,and the register direct mapping strategy used in the back-end code optimization was applied here.By establishing mapping formula,the memory virtual operation was replaced by local register operation,thus reducing the expansion degree of intermediate code.The SPEC CPU2006 test suite was used to carry out the experimental,and the experimental results verify the correctness and effectiveness of this optimization method.The results before and after optimization are consistent,which verifies the correctness of the optimization method,meanwhile,the average reduction rate of intermediate code for each case after optimization is 32.59%,which verifies the effectiveness of the optimization method.
关 键 词:动态二进制翻译 中间代码 内存虚拟策略 代码膨胀 中间表示规则 寄存器映射
分 类 号:TP314[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:18.221.207.166