[发明专利]指示调用或返回的意图的控制转移指令有效
申请号: | 201680050353.X | 申请日: | 2016-08-30 |
公开(公告)号: | CN107925690B | 公开(公告)日: | 2021-07-13 |
发明(设计)人: | P.卡普里奥利;山田康一;T.英斯 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;H04M1/57 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 张凌苗;申屠伟进 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 指示 调用 返回 意图 控制 转移 指令 | ||
1.一种用于指示调用或返回的意图的控制转移指令的处理器,包括:
返回目标预测器;
指令硬件,其用于接收第一指令、第二指令和第三指令;以及
执行硬件,其用于执行第一指令、第二指令和第三指令,其中
第一指令的执行用于将第一返回地址存储在栈上并且将控制转移到第一目标地址,
第二指令的执行用于将第二返回地址存储在返回目标预测器中并且将控制转移到第二目标地址,以及
第三指令的执行用于将控制转移到第二目标地址;
其中指令的执行代替跳转指令的执行。
2.如权利要求1所述的处理器,其中第二指令的执行用于将第二返回地址存储在返回目标预测器中并且将控制转移到第二目标地址,而不将第一返回地址存储在栈上并且不将第二返回地址存储在栈上。
3.如权利要求2所述的处理器,其中第三指令的执行用于将控制转移到第二目标地址,而不将第一返回地址存储在返回目标预测器中、不将第二返回地址存储在返回目标预测器中、不将第一返回地址存储在栈上并且不将第二返回地址存储在栈上。
4.如权利要求1所述的处理器,其中:
指令硬件还用于接收第四指令和第五指令;以及
执行硬件还用于执行第四指令和第五指令,其中
第四指令的执行用于从栈取回第一返回地址并且将控制转移到第一返回地址,以及
第五指令的执行用于从返回目标预测器取回第二返回地址并且将控制转移到第二返回地址。
5.如权利要求4所述的处理器,其中第五指令的执行用于从返回目标预测器取回第二返回地址并且将控制转移到第二返回地址,而不从栈取回第一返回地址并且不从栈取回第二返回地址。
6.如权利要求1所述的处理器,其中第二目标地址将与二进制转译相关地从第一目标地址导出。
7.如权利要求1所述的处理器,其中第二返回地址将从第二指令的操作数导出。
8.一种用于指示调用或返回的意图的控制转移指令的方法,包括:
将调用指令转译成压入指令和第一指令,其中所述调用指令用于将第一返回地址存储在栈上并且将控制转移到第一目标地址;
由处理器执行压入指令以将第一返回地址存储在栈上;以及
由处理器执行第一指令,其中第一指令的执行包括将第二返回地址存储在返回目标预测器中并且将控制转移到第二目标地址;
其中执行指令代替执行跳转指令。
9.如权利要求8所述的方法,其中第一指令的执行包括将第二返回地址存储在返回目标预测器中并且将控制转移到第二目标地址,而不将第一返回地址存储在栈上并且不将第二返回地址存储在栈上。
10.如权利要求8所述的方法,进一步包括:
将返回指令转译成第二指令,其中所述返回指令用于从栈取回第一返回地址和将控制转移到第一返回地址;以及
由处理器执行第二指令,其中第二指令的执行包括从返回目标预测器取回第二返回地址和将控制转移到对第二返回地址。
11.如权利要求10所述的方法,
其中将返回指令转译成第二指令包括将返回指令转译成弹出指令和第二指令,进一步包括:
由处理器执行所述弹出指令以从栈取回第一返回地址。
12.如权利要求10所述的方法,其中第二指令的执行包括从返回目标预测器取回第二返回地址和将控制转移到第二返回地址,而不从栈取回第一返回地址并且不从栈取回第二返回地址。
13.如权利要求8所述的方法,其中转译还包括从第一目标地址导出第二目标地址。
14.如权利要求8所述的方法,进一步包括从第一指令的操作数导出第二返回地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680050353.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:包括输入装置的电子设备
- 下一篇:手表式移动终端及其控制方法