[发明专利]用于寄存器分配的方法、装置和系统有效
申请号: | 201410381252.3 | 申请日: | 2011-02-23 |
公开(公告)号: | CN104156253B | 公开(公告)日: | 2017-10-24 |
发明(设计)人: | T·扬恰克;B·J·阿什博 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 永新专利商标代理有限公司72002 | 代理人: | 刘瑜,王英 |
地址: | 美国加*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 使用 写入 掩码 具有 simd 架构 寄存器 分配 | ||
1.一种用于单指令多数据处理器的方法,包括:
确定在所述单指令多数据处理器的寄存器分配的构建阶段之前不能具有不兼容写入掩码的生命期,其中,如果两个掩码能够写入到并行分支中的相同的单指令多数据子通道,那么它们是不兼容的;以及
响应于所述确定,执行纠正动作。
2.根据权利要求1所述的方法,其中,所述纠正动作包括将边添加到冲突图,以使得具有不兼容写入掩码的生命期将不被分派给相同物理寄存器。
3.根据权利要求1所述的方法,包括使用支配树来确定不能具有不兼容写入掩码的生命期。
4.根据权利要求3所述的方法,包括找到不在选择的基本块的支配路径上的并行基本块。
5.根据权利要求4所述的方法,包括确定并行基本块的活动集以建立并行生命内集合。
6.根据权利要求5所述的方法,包括检查所述选择的基本块的每一个指令,以查看其掩码是否与所述并行生命内集合中的掩码不兼容。
7.根据权利要求1所述的方法,包括使得能够在所述单指令多数据处理器中使用两个不同的单指令多数据模式。
8.根据权利要求1所述的方法,其中,如果所述写入掩码能够写入到并行基本块中的相同的单指令多数据子通道,那么所述写入掩码是不兼容的。
9.一种用于单指令多数据处理器的装置,包括:
第一逻辑,用于确定两个写入掩码之间是否可能存在冲突;
第二逻辑,用于如果确定可能存在所述冲突,则确定不能具有不兼容写入掩码的生命期;
第三逻辑,用于将边添加到冲突图,以使得具有不兼容写入掩码的生命期将不被分派给相同物理寄存器,其中,如果两个掩码能够写入到并行分支中的相同的单指令多数据子通道,那么它们是不兼容的。
10.根据权利要求9所述的装置,其中,所述装置用于确定在所述单指令多数据处理器的编译期间不能具有不兼容写入掩码的生命期。
11.根据权利要求9所述的装置,其中,所述装置用于使用支配树来确定不能具有不兼容写入掩码的生命期。
12.根据权利要求11所述的装置,其中,所述装置用于找到不在选择的基本块的支配路径上的并行基本块。
13.根据权利要求12所述的装置,其中,所述装置用于确定所述并行基本块的活动集以建立并行生命内集合。
14.根据权利要求13所述的装置,其中,所述装置用于检查所述选择的基本块的每一个指令以查看其掩码是否与所述并行生命内集合中的掩码不兼容。
15.一种计算机系统,包括:
单指令多数据处理器,用于确定在编译期间不能具有不兼容写入掩码的生命期,其中,如果两个掩码能够写入到并行分支中的相同的单指令多数据子通道,那么它们是不兼容的;以及
耦合到所述处理器的存储器。
16.根据权利要求15所述的系统,所述处理器将边添加到冲突图,以使得具有不兼容写入掩码的生命期将不被分派给相同物理寄存器。
17.根据权利要求15所述的系统,所述处理器使用支配树来确定不能具有冲突写入掩码的生命期。
18.根据权利要求17所述的系统,所述处理器找到不在选择的基本块的支配路径上的并行基本块。
19.根据权利要求18所述的系统,所述处理器确定并行基本块的活动集以建立并行生命内集合。
20.根据权利要求19所述的系统,所述处理器检查所述选择的基本块的每一个指令以查看其掩码是否与所述并行生命内集合中的掩码不兼容。
21.根据权利要求15所述的系统,其中,所述处理器是图形处理器。
22.根据权利要求15所述的系统,其中,所述存储器是系统存储器。
23.根据权利要求15所述的系统,其中,所述处理器是多核处理器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410381252.3/1.html,转载请声明来源钻瓜专利网。