[发明专利]一种面向指令目标操作数的寄存器对分配方法及存储介质有效
申请号: | 201910411700.2 | 申请日: | 2019-05-17 |
公开(公告)号: | CN110187883B | 公开(公告)日: | 2022-12-06 |
发明(设计)人: | 胡勇华;陆浩松;周新莲;唐镇;黄友智 | 申请(专利权)人: | 湖南科技大学 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 周长清;胡君 |
地址: | 411201*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 指令 目标 作数 寄存器 分配 方法 存储 介质 | ||
1.一种面向指令目标操作数的寄存器对分配方法,其特征在于,步骤包括:
S1.初始分配:分别将待处理指令中包括成对寄存器的所有目标操作数所包含的两个符号寄存器均作为单寄存器分配候选者进行独立的寄存器分配;
S2.修正分配:依次获取各条指令进行寄存器修正分配,如果指令中存在至少一个以上的目标操作数涉及寄存器对,对指令中各目标操作数依次进行寄存器对合法性检查,并根据检查结果将寄存器对中不符合使用规则的错误使用寄存器使用替换寄存器进行替换,所述替换寄存器根据各寄存器、寄存器对在指令操作数字段出口处的空闲状态进行选取,并使得每个所述替换寄存器使用后不再作为相同指令中其他目标操作数的替换寄存器候选者,以及被替换出来的寄存器不作为其他被替换寄存器的替换寄存器候选者。
2.根据权利要求1所述的面向指令目标操作数的寄存器对分配方法,其特征在于,所述步骤S1中,具体将目标操作数中成对的寄存器分配候选者中的每一个都当作对应着单个物理寄存器的独立单寄存器分配候选者,并与其他单寄存器分配候选者一起采用相同的寄存器分配方式分配各自的物理寄存器。
3.根据权利要求1所述的面向指令目标操作数的寄存器对分配方法,其特征在于,所述步骤S2的步骤包括:
S21.在每条指令处理前获取各寄存器以及寄存器对在指令操作数字段出口处的空闲状态;
S22.对每条指令进行处理时,从指令的第一个目标操作数开始遍历各个目标操作数,如果目标操作数包含一个寄存器对,对该寄存器对进行合法性检查,判断该寄存器对中两个寄存器是否符合寄存器对使用规则,若不符合,判定需要修正,转入执行步骤S23;
S23.判断需要修正的寄存器对中错误使用寄存器的位置,根据所述错误使用寄存器的位置以及各寄存器在指令操作数字段出口处的空闲状态选取替换寄存器对当前各所述错误使用寄存器进行修正,优先选取在指令操作数字段出口处空闲的寄存器作为所述替换寄存器。
4.根据权利要求3所述的面向指令目标操作数的寄存器对分配方法,其特征在于,所述步骤S23的步骤包括:判断目标操作数中寄存器对是否是由两个连号的奇偶号寄存器构成,如果目标操作数寄存器对中两个寄存器序号均不符合,则判定为需要全部替换目标操作数寄存器对的两个寄存器,使用第一修正模式对目标操作数中两个寄存器进行修正;如果目标操作数寄存器对中的左位寄存器或右位寄存器序号不符合,则判定需要替换目标操作数寄存器对中的左位寄存器或右位寄存器,使用第二修正模式对目标操作中左位或右位寄存器进行修正;如果目标操作数寄存器对中的两个寄存器序号不匹配,则判定需要替换目标操作数寄存器对中的任意一个寄存器,使用第三修正模式对目标操作数中任意一个寄存器进行修正。
5.根据权利要求4所述的面向指令目标操作数的寄存器对分配方法,其特征在于,所述步骤S23中对每条指令的处理步骤具体包括:
S231.对指令进行目标操作数寄存器对修正的数据进行初始化,包括获取指令源操作数字段出口处的寄存器空闲状态和寄存器对的空闲状态;
S232.判断指令是否还有要修正的目标操作数,如果没有转到步骤S236,否则执行步骤S233;
S233.切换到下一个要处理的目标操作数寄存器对;
S234.初始化处理1个目标操作数寄存器对时所需的数据;
S235.选取所需替换寄存器修正当前目标操作数;
S236.更新当前指令的目标操作数涉及的变量;
S237.添加将所有需要保护数据的替换寄存器中的内容保护到寄存器的指令到前插指令队列首,加恢复内容的指令到原寄存器的指令到后插指令队列尾;
S238.将所有的前插指令插入到当前被处理指令之前,将所有的后插指令插入到当前被处理指令之后。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南科技大学,未经湖南科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910411700.2/1.html,转载请声明来源钻瓜专利网。