Method and a device for abstracting instruction sequences with tail merging
    1.
    发明授权
    Method and a device for abstracting instruction sequences with tail merging 失效
    用尾部合并来抽取指令序列的方法和装置

    公开(公告)号:US07293264B2

    公开(公告)日:2007-11-06

    申请号:US10667140

    申请日:2003-09-17

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4436

    摘要: A method and a device for abstracting instruction sequences in a computer program. First, a control flow graph of the program is generated and analysed in order to detect multiple occurrences of a same instruction sequence (504, 506). Then, a function including the longest sequence common to at least two instruction sequences from a plurality of sequences having a common instruction sequence of equal or shorter length compared to the longest sequence is created (512). Finally, the original occurrences of the instruction sequences in the plurality of sequences with a reference to a proper position in the newly created function are deleted and a reference to a proper position in the created function inserted instead (514).

    摘要翻译: 一种用于在计算机程序中抽象指令序列的方法和装置。 首先,生成和分析程序的控制流程图,以便检测相同指令序列的多次出现(504,506)。 然后,创建包括与具有与最长序列相同或较短长度的公共指令序列的多个序列的至少两条指令序列共有的最长序列的功能(512)。 最后,删除在新创建的功能中参考适当位置的多个序列中的指令序列的原始出现,并且替换地创建所创建的函数中适当位置的引用(514)。

    Constructing control flows graphs of binary executable programs at post-link time
    2.
    发明授权
    Constructing control flows graphs of binary executable programs at post-link time 失效
    在链接后的时间内构建二进制可执行程序的控制流程图

    公开(公告)号:US07207038B2

    公开(公告)日:2007-04-17

    申请号:US10651839

    申请日:2003-08-29

    IPC分类号: G06F9/45

    CPC分类号: G06F8/433

    摘要: A method and a system for constructing a control flow graph (CFG, 106) from an executable computer program (104). The solution detects data intermixed with instructions and instruction set changes. The method includes the steps of defining block leader types specifying basic block boundaries in the program (104), building a CFG structure (106) according to the basic blocks found in the program, and adding control flow and addressing information to the CFG (106) by propagating through the basic blocks and internals thereof. The CFG (106) may be then optimised (108) and a compacted executable (112) created as a result.

    摘要翻译: 一种用于从可执行计算机程序(104)构建控制流程图(CFG,106)的方法和系统。 该解决方案检测与指令和指令集更改混合的数据。 该方法包括以下步骤:在程序(104)中定义指定基本块边界的块引导类型,根据程序中发现的基本块构建CFG结构(106),并将控制流和寻址信息添加到CFG(106 )通过其基本块和内部传播。 然后可以对CFG(106)进行优化(108)并作为结果创建压实的可执行程序(112)。

    Method and a device for abstracting instruction sequences with tail merging
    3.
    发明申请
    Method and a device for abstracting instruction sequences with tail merging 失效
    用尾部合并来抽取指令序列的方法和装置

    公开(公告)号:US20050060697A1

    公开(公告)日:2005-03-17

    申请号:US10667140

    申请日:2003-09-17

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4436

    摘要: A method and a device for abstracting instruction sequences in a computer program. First, a control flow graph of the program is generated and analysed in order to detect multiple occurrences of a same instruction sequence (504, 506). Then, a function including the longest sequence common to at least two instruction sequences from a plurality of sequences having a common instruction sequence of equal or shorter length compared to the longest sequence is created (512). Finally, the original occurrences of the instruction sequences in the plurality of sequences with a reference to a proper position in the newly created function are deleted and a reference to a proper position in the created function inserted instead (514).

    摘要翻译: 一种用于在计算机程序中抽象指令序列的方法和装置。 首先,生成和分析程序的控制流程图,以便检测相同指令序列的多次出现(504,506)。 然后,创建包括与具有与最长序列相同或较短长度的公共指令序列的多个序列的至少两条指令序列共有的最长序列的功能(512)。 最后,删除在新创建的功能中参考适当位置的多个序列中的指令序列的原始出现,并且替换地创建所创建的函数中适当位置的引用(514)。

    Method and a system for constructing control flows graphs of binary executable programs at post-link time
    4.
    发明申请
    Method and a system for constructing control flows graphs of binary executable programs at post-link time 失效
    方法和系统,用于在链接后的时间内构建二进制可执行程序的控制流程图

    公开(公告)号:US20050060696A1

    公开(公告)日:2005-03-17

    申请号:US10651839

    申请日:2003-08-29

    IPC分类号: G06F9/45

    CPC分类号: G06F8/433

    摘要: A method and a system for constructing a control flow graph (CFG, 106) from an executable computer program (104). The solution detects data intermixed with instructions and instruction set changes. The method includes the steps of defining block leader types specifying basic block boundaries in the program (104), building a CFG structure (106) according to the basic blocks found in the program, and adding control flow and addressing information to the CFG (106) by propagating through the basic blocks and internals thereof. The CFG (106) may be then optimised (108) and a compacted executable (112) created as a result.

    摘要翻译: 一种用于从可执行计算机程序(104)构建控制流程图(CFG,106)的方法和系统。 该解决方案检测与指令和指令集更改混合的数据。 该方法包括以下步骤:在程序(104)中定义指定基本块边界的块引导类型,根据程序中发现的基本块构建CFG结构(106),并将控制流和寻址信息添加到CFG(106 )通过其基本块和内部传播。 然后可以对CFG(106)进行优化(108)并作为结果创建压实的可执行程序(112)。