[发明专利]间接分支指令处理方法和装置有效
申请号: | 201210069463.4 | 申请日: | 2012-03-15 |
公开(公告)号: | CN102662631A | 公开(公告)日: | 2012-09-12 |
发明(设计)人: | 廖银;靳国杰;高翔 | 申请(专利权)人: | 龙芯中科技术有限公司 |
主分类号: | G06F9/34 | 分类号: | G06F9/34;G06F9/45 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 吴贵明;江舟 |
地址: | 100190 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 间接 分支 指令 处理 方法 装置 | ||
1.一种间接分支指令处理方法,其特征在于,包括:
加载与当前执行的间接分支指令所在的当前基本块对应的缓存数组,其中,所述缓存数组中的记录项用于记录所述当前基本块中已执行过的间接分支指令的目标地址;判断所述当前执行的间接分支指令的目标地址是否与所述缓存数组中对应的记录项中记录的目标地址相同;
若所述当前执行的间接分支指令的目标地址与所述缓存数组中对应的记录项中记录的目标地址相同,则跳转到所述当前执行的间接分支指令的目标地址,并从所述当前执行的间接分支指令的目标地址开始执行代码。
2.根据权利要求1所述的方法,其特征在于,在判断所述当前执行的间接分支指令的目标地址是否与所述缓存数组中对应的记录项中记录的目标地址相同之后,还包括:
若判断所述当前执行的间接分支指令的目标地址与所述缓存数组中对应的记录项中记录的目标地址不同,则将所述当前执行的间接分支指令的目标地址记录在所述缓存数组中对应的记录项中。
3.根据权利要求2所述的方法,其特征在于,将所述当前执行的间接分支指令的目标地址记录在所述缓存数组中对应的记录项中的步骤包括:
将所述当前执行的间接分支指令的目标地址对所述缓存数组中的记录项的个数取模,得到余数i;
将所述当前执行的间接分支指令的目标地址记录在所述缓存数组中第i个记录项中。
4.根据权利要求2所述的方法,其特征在于,将所述当前执行的间接分支指令的目标地址记录在所述缓存数组中对应的记录项中的步骤包括:
判断所述当前执行的间接分支指令的目标地址所对应的基本块是否被翻译;
若所述当前执行的间接分支指令的目标地址所对应的基本块被翻译,则将所述当前执行的间接分支指令的目标地址记录在所述缓存数组中对应的记录项中;
若所述当前执行的间接分支指令的目标地址所对应的基本块未被翻译,则对所述当前执行的间接分支指令的目标地址所对应的基本块执行二进制翻译,并将经过二进制翻译得到的基本块的首地址记录在所述缓存数组中对应的记录项中。
5.根据权利要求4所述的方法,其特征在于,判断所述当前执行的间接分支指令的目标地址所对应的基本块是否被翻译的步骤包括:
判断所述当前执行的间接分支指令的目标地址是否与全局哈希数组中记录的已执行二进制翻译的基本块的首地址相同;
若相同,则判断出所述当前执行的间接分支指令的目标地址所对应的基本块已被翻译;
若不同,则判断出所述当前执行的间接分支指令的目标地址所对应的基本块未被翻译。
6.根据权利要求1所述的方法,其特征在于,判断所述当前执行的间接分支指令的目标地址是否与所述缓存数组中对应的记录项中记录的目标地址相同的步骤包括:
将所述当前执行的间接分支指令的目标地址对所述缓存数组中的记录项的个数取模,得到余数i;
判断所述当前执行的间接分支指令的目标地址与所述缓存数组中第i个记录项中记录的目标地址是否相同。
7.一种间接分支指令处理装置,其特征在于,包括:
加载单元,用于加载与当前执行的间接分支指令所在的当前基本块对应的缓存数组,其中,所述缓存数组中的记录项用于记录所述当前基本块中已执行过的间接分支指令的目标地址;
判断单元,用于判断所述当前执行的间接分支指令的目标地址是否与所述缓存数组中对应的记录项中记录的目标地址相同;
执行单元,用于在所述判断单元判断当前执行的间接分支指令的目标地址与所述缓存数组中对应的记录项中记录的目标地址相同时,跳转到所述当前执行的间接分支指令的目标地址,并从所述当前执行的间接分支指令的目标地址开始执行代码。
8.根据权利要求7所述的装置,其特征在于,还包括:
记录单元,用于在所述判断单元判断当前执行的间接分支指令的目标地址与所述缓存数组中对应的记录项中记录的目标地址不同时,将所述当前执行的间接分支指令的目标地址记录在所述缓存数组中对应的记录项中。
9.根据权利要求8所述的装置,其特征在于,所述记录单元包括:
第一取模模块,将所述当前执行的间接分支指令的目标地址对所述缓存数组中的记录项的个数取模,得到余数i;
第一记录模块,用于将所述当前执行的间接分支指令的目标地址记录在所述缓存数组中第i个记录项中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于龙芯中科技术有限公司,未经龙芯中科技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210069463.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种非晶合金变压器的安装结构
- 下一篇:地道桥下积水快速排水潜水气压泵