[发明专利]反编译过程中的寄存器传播方法、装置及反编译器有效

专利信息
申请号: 201010289523.4 申请日: 2010-09-17
公开(公告)号: CN101963898A 公开(公告)日: 2011-02-02
发明(设计)人: 陈耿标;林毓双 申请(专利权)人: 广州迪庆电子科技有限公司
主分类号: G06F9/30 分类号: G06F9/30
代理公司: 广州华进联合专利商标代理有限公司 44224 代理人: 黄晓庆;王茹
地址: 510000 广东省广州市天*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 反编译 过程 中的 寄存器 传播 方法 装置 编译器
【权利要求书】:

1.一种反编译过程中的寄存器传播方法,其特征在于,包括步骤:

构造函数内的所有的指令路径;

遍历各指令所在的各指令路径,根据各指令所在的所有的指令路径,分别计算出各指令的使用定义链,得到各指令的使用定义链集;

顺序扫描各指令,根据各指令的使用定义链、预设寄存器传播规则,确定各指令的寄存器传播方式,并根据确定的寄存器传播方式进行各指令的寄存器传播。

2.根据权利要求1所述的反编译过程中的寄存器传播方法,其特征在于,所述预设寄存器传播规则包括:

对于定义了当前指令的源寄存器的第一指令,若在从该第一指令到当前指令的指令路径上,该第一指令的源操作数与目的操作数未被重新定义过,则当前指令可以传播;

若当前指令所使用的寄存器被处于不同指令路径的指令所定义,该当前指令不能被传播。

3.根据权利要求2所述的反编译过程中的寄存器传播方法,其特征在于:

当当前指令可以传播时,将该当前指令的源寄存器替换为该当前指令的使用定义链所指向的指令的源寄存器,同时删除该使用定义链所指向的指令;

当当前指令确定不能被传播时,保持该当前指令不变。

4.根据权利要求1或2或3所述的反编译过程中的寄存器传播方法,其特征在于:

所述指令路径为连续的指令的集合,当该集合中的任意一个指令被执行后,该指令的后续指令都将被执行;

和/或

所述反编译过程为C反编译器中的C反编译过程,所述函数为C函数。

5.一种反编译过程中的寄存器传播装置,其特征在于,包括:

指令路径构造单元,用于构造函数内的所有的指令路径;

与所述指令路径构造单元相连接的使用定义链单元,用于遍历各指令所在的各指令路径,根据各指令所在的所有的指令路径,分别计算出各指令的使用定义链,得到各指令的使用定义链集;

与所述使用定义链单元相连接的传播单元,用于顺序扫描各指令,根据各指令的使用定义链、预设寄存器传播规则,确定各指令的寄存器传播方式,并根据确定的寄存器传播方式进行各指令的寄存器传播。

6.根据权利要求5所述的反编译过程中的寄存器传播装置,其特征在于,所述预设寄存器传播规则包括:

对于定义了当前指令的源寄存器的第一指令,若在从该第一指令到当前指令的指令路径上,该第一指令的源操作数与目的操作数未被重新定义过,则当前指令可以传播;

若当前指令所使用的寄存器被处于不同指令路径的指令所定义,该当前指令不能被传播。

7.根据权利要求6所述的反编译过程中的寄存器传播装置,其特征在于:

当当前指令可以传播时,将该当前指令的源寄存器替换为该当前指令的使用定义链所指向的指令的源寄存器,同时删除该使用定义链所指向的指令;

当当前指令确定不能被传播时,保持该当前指令不变。

8.根据权利要求5或6或7所述的反编译过程中的寄存器传播装置,其特征在于:所述指令路径为连续的指令的集合,当该集合中的任意一个指令被执行后,该指令的后续指令都将被执行。

9.根据权利要求5或6或7所述的反编译过程中的寄存器传播装置,其特征在于:所述反编译过程为C反编译器中的C反编译过程,所述函数为C函数。

10.一种反编译器,其特征在于,该反编译器包括如权利要求5至9任意一项所述的寄存器传播装置。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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