[发明专利]一种含有配对寄存器的寄存器分配方法有效

专利信息
申请号: 200810240849.0 申请日: 2008-12-26
公开(公告)号: CN101770387A 公开(公告)日: 2010-07-07
发明(设计)人: 周谦 申请(专利权)人: 北京中电华大电子设计有限责任公司
主分类号: G06F9/45 分类号: G06F9/45
代理公司: 暂无信息 代理人: 暂无信息
地址: 100102 北京市朝阳*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 含有 配对 寄存器 分配 方法
【权利要求书】:

1.一种含有配对寄存器的寄存器分配方法,其特征包括以下步骤:在寄存器分配前的准备工 作中记录下配对的寄存器TN,在寄存器分配阶段优先对配对的寄存器TN进行分配,然 后再对普通的寄存器TN进行分配,并进行压栈处理;其中:

寄存器分配前的准备工作包括以下步骤:

(1)在指令选择过程中建立寄存器的配对关系,在多重配对的情况下,记录下寄存器TN 的多个配对TN号,在指令选择过程中,对主寄存器设定字节配对或者字配对的标志,并将 与之配对的寄存器号记录在主寄存器TN的数据结构里;

(2)计算寄存器的活跃区间,按照每个基本块计算变量的定值到达信息,记录每个变量 的第一个定值和最后一个引用的中间代码的位置标号;

(3)建立寄存器之间的干涉关系,如果两个寄存器TN的活跃区间冲突,则认为构成干 涉关系,这样的两个寄存器TN不放在同一个寄存器里;

(4)对于在寄存器分配阶段之前已经分配了寄存器TNi,假定分配了寄存器a,对与寄存 器TNi构成干涉关系的寄存器TNj,寄存器a不可用;

寄存器分配阶段,包括以下步骤:

(1)先对配对寄存器进行寄存器分配,如果主寄存器是字节寄存器,先分配主寄存器, 再分配配对寄存器;如果主寄存器是字寄存器,再分两种情况进行处理,如果配对寄存器是 字寄存器,则对该配对寄存器进行分配;如果配对寄存器是字节寄存器,则对该配对寄存器 进行分配;

(2)再对普通寄存器进行寄存器分配,如果寄存器是字寄存器,则对该寄存器进行分配;

如果寄存器是字节寄存器,则对该寄存器进行分配;

寄存器压栈处理策略步骤如下:

(1)遍历寄存器reg,对于当前要分配的字节寄存器TNi和寄存器reg,选择用于压栈的 字节寄存器TNj,并找出分配寄存器号同为reg的其他寄存器TN;

(2)找到后跳出遍历寄存器reg的循环,在用于压栈的字节寄存器TNj的第一次定值后面 插入压栈指令,其他定值后面插入store指令,在寄存器TNj的使用前面插入load指令;

(3)为了减少插入的load和store指令的个数,根据寄存器TNj的定义和使用关系,判 断是否需要插入load和store指令,仅在需要插入时再插入load和store指令,然后,对 于要分配的寄存器TNi,分配寄存器reg;

其中,TN是待分配寄存器的临时变量,TNi、TNj、reg为寄存器的编号。

2.根据权利要求1所述的一种含有配对寄存器的寄存器分配方法,其特征在于所述对字寄存 器分配方法,对于所有的字寄存器,按照从小到大的顺序排列,如果循环中当前的字寄存器 对当前寄存器TNi可用,则将该字寄存器分配给当前寄存器TNi,对于与当前寄存器TNi构 成干涉关系的寄存器TNj,记录使得该字寄存器对寄存器TNj不可用,如果没有字寄存器可 用,则进行压栈处理。

3.根据权利要求1所述的一种含有配对寄存器的寄存器分配方法,其特征在于所述对字节寄 存器分配方法,对于所有的字节寄存器,按照从小到大的顺序排列,如果循环中当前的字节 寄存器对当前寄存器TNi可用,则将该字节寄存器分配给当前寄存器TNi,对于与当前寄存 器TNi构成干涉关系的寄存器TNj,记录使得该字节寄存器对寄存器TNj不可用,如果没有 字节寄存器可用,则进行压栈处理。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中电华大电子设计有限责任公司,未经北京中电华大电子设计有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200810240849.0/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top