Method for performing common subexpression elimination on a rack-N
static single assignment language
    1.
    发明授权
    Method for performing common subexpression elimination on a rack-N static single assignment language 失效
    在机架-N静态单一赋值语言上执行公共子表达式消除的方法

    公开(公告)号:US6002879A

    公开(公告)日:1999-12-14

    申请号:US829856

    申请日:1997-04-01

    IPC分类号: G06F9/45 G06F9/44

    CPC分类号: G06F8/443

    摘要: Briefly, in one embodiment, the invention is a method for eliminating common subexpressions in an initial SSA intermediate language representation of at least a portion of a computer program. The method includes (a) inserting a phi-node for an unambiguous definition used in an unambiguous subexpression reaching a join point in the initial intermediate language subsequent to the join point; (b) inserting a phi-node for the unambiguous common subexpression; (c) renaming the unambiguous definition and a subsequent use reached by the definition; and (d) renaming the unambiguous common subexpression.

    摘要翻译: 简言之,在一个实施例中,本发明是一种消除计算机程序的至少一部分的初始SSA中间语言表示中的公共子表达的方法。 该方法包括(a)插入用于在连接点之后的初始中间语言中达到连接点的明确子表达中明确定义的phi-节点; (b)插入用于明确的公共子表达式的节点; (c)重新定义明确的定义和随后的定义; 和(d)重命名明确的共同子表达式。

    Method for determining the set of variables that may be ambiguously
defined at a point in a computer program
    2.
    发明授权
    Method for determining the set of variables that may be ambiguously defined at a point in a computer program 失效
    用于确定可能在计算机程序中的点处被模糊地定义的变量集合的方法

    公开(公告)号:US6031994A

    公开(公告)日:2000-02-29

    申请号:US831159

    申请日:1997-04-01

    申请人: Jim J. Radigan

    发明人: Jim J. Radigan

    IPC分类号: G06F9/45 G06F7/04

    CPC分类号: G06F8/433

    摘要: A computer implemented method for determining the set of variables that may be ambiguously defined at a point in a computer program includes first placing all variables contained in at least a portion of the computer program into the set. Next, a definition of a variable in at least a portion of the computer program is located. Then, if the definition unambiguously defines the variable, then the variable is removed from the set. Otherwise, if the definition is an ambiguous definition, then all the variables contained in the portion of the computer program are placed into the set.

    摘要翻译: 一种用于确定可能在计算机程序中的点处被模糊定义的变量集合的计算机实现的方法包括首先将包含在计算机程序的至少一部分中的所有变量放置到组中。 接下来,定位计算机程序的至少一部分中的变量。 然后,如果定义明确地定义了变量,那么该变量将从集合中移除。 否则,如果定义是不明确的定义,那么包含在计算机程序部分中的所有变量都将被放置在集合中。

    Method for using static single assignment to color out artificial
register dependencies
    3.
    发明授权
    Method for using static single assignment to color out artificial register dependencies 失效
    使用静态单个分配来绘制人工寄存器依赖关系的方法

    公开(公告)号:US6016398A

    公开(公告)日:2000-01-18

    申请号:US831739

    申请日:1997-04-01

    申请人: Jim J. Radigan

    发明人: Jim J. Radigan

    IPC分类号: G06F9/45

    CPC分类号: G06F8/441

    摘要: The invention is a method of using static single assignment intermediate language to color out artificial register dependencies while compiling at least a portion of a computer program. The method comprises creating a rank-n SSA intermediate language representation of the computer program, wherein n is a positive integer greater than 1; and coloring out the artificial register dependencies.

    摘要翻译: 本发明是一种在编译计算机程序的至少一部分的同时使用静态单分配中间语言来着色人工寄存器依赖性的方法。 该方法包括创建计算机程序的秩n SSA中间语言表示,其中n是大于1的正整数; 并着色出人工寄存器依赖关系。

    Method for constructing a static single assignment language
accommodating complex symbolic memory references
    4.
    发明授权
    Method for constructing a static single assignment language accommodating complex symbolic memory references 失效
    用于构建容纳复杂符号存储器引用的静态单一赋值语言的方法

    公开(公告)号:US5999735A

    公开(公告)日:1999-12-07

    申请号:US831074

    申请日:1997-04-01

    申请人: Jim J. Radigan

    发明人: Jim J. Radigan

    IPC分类号: G06F9/44 G06F9/45 G06F9/445

    CPC分类号: G06F8/31 G06F8/41

    摘要: The invention, in one embodiment is a method of creating a rank-n static single assignment intermediate language from a rank-(n-1) static single assignment intermediate language, where n is a positive integer. The method includes searching the rank-(n-1) static single assignment intermediate language for a rank-1 definition that reaches at least one use; and renaming the rank-1 definition and the at least one use to a compiler temporary.

    摘要翻译: 本发明在一个实施例中是一种从秩 - (n-1)静态单一分配中间语言创建秩n静态单一分配中间语言的方法,其中n是正整数。 该方法包括搜索等级(n-1)静态单一分配中间语言以达到至少一种使用的秩1定义; 并将临时的1级定义和至少一种使用重命名为编译器。

    Method for optimizing a loop in a computer program by speculatively
removing loads from within the loop
    5.
    发明授权
    Method for optimizing a loop in a computer program by speculatively removing loads from within the loop 失效
    通过推测性地从循环内移除负载来优化计算机程序中的循环的方法

    公开(公告)号:US6151704A

    公开(公告)日:2000-11-21

    申请号:US829980

    申请日:1997-04-01

    申请人: Jim J. Radigan

    发明人: Jim J. Radigan

    IPC分类号: G06F9/45

    CPC分类号: G06F8/443

    摘要: A method for optimizing a loop in a computer program. The loop contains at least a first statement that uses a variable. The method includes inserting a second statement that loads the variable. The second statement is inserted prior to the loop. The method also includes inserting a third statement that (i) checks whether the variable has been written to at any point between the second statement and the third statement and if and only if the variable has been written to, then loading the variable.

    摘要翻译: 一种用于优化计算机程序中的循环的方法。 循环至少包含使用变量的第一个语句。 该方法包括插入加载变量的第二个语句。 在循环之前插入第二个语句。 该方法还包括插入第三个语句,即(i)检查变量是否已经被写入到第二个语句和第三个语句之间的任意点,并且当且仅当该变量被写入时才加载该变量。

    Method for identifying partial redundancies in a new processor
architecture
    6.
    发明授权
    Method for identifying partial redundancies in a new processor architecture 失效
    用于识别新处理器架构中的部分冗余的方法

    公开(公告)号:US6029005A

    公开(公告)日:2000-02-22

    申请号:US829933

    申请日:1997-04-01

    申请人: Jim J. Radigan

    发明人: Jim J. Radigan

    IPC分类号: G06F9/45

    CPC分类号: G06F8/443

    摘要: The invention, in one embodiment, is a method for compiling at least a portion of a computer program. The method includes (a) inserting a phi-function for a global variable reaching a join point in the intermediate language representation subsequent to the join point without regard to the presence of ambiguity; (b) renaming a definition and any subsequent use of the definition in the intermediate language representation; and (c) identifying a partially redundant load by determining whether any of the operands of the inserted phi-function have not been renamed.

    摘要翻译: 在一个实施例中,本发明是用于编译计算机程序的至少一部分的方法。 该方法包括(a)在连接点之后的中间语言表示中插入到达到连接点的全局变量的phi函数,而不考虑模糊度的存在; (b)重新命名中间语言表示中的定义和随后使用的定义; 和(c)通过确定插入的phi函数的任何操作数是否未被重命名来识别部分冗余的负载。

    Method for identifying partial redundancies in existing processor
architectures
    7.
    发明授权
    Method for identifying partial redundancies in existing processor architectures 失效
    用于识别现有处理器架构中的部分冗余的方法

    公开(公告)号:US5991540A

    公开(公告)日:1999-11-23

    申请号:US829847

    申请日:1997-04-01

    申请人: Jim J. Radigan

    发明人: Jim J. Radigan

    IPC分类号: G06F9/45

    CPC分类号: G06F8/433 G06F8/443

    摘要: The invention in one embodiment is a method for identifying partially redundant loads in an SSA intermediate language representation of at least a portion of a computer program. The intermediate language representation in this embodiment includes an inserted phi-function and the definitions and their uses have been renamed. The method includes identifying a partially redundant load by determining whether one of the operands in the inserted phi-function is unregisterized.

    摘要翻译: 在一个实施例中的本发明是用于识别计算机程序的至少一部分的SSA中间语言表示中的部分冗余负载的方法。 该实施例中的中间语言表示包括插入的phi函数,并且定义及其用途已被重命名。 该方法包括通过确定插入的phi函数中的一个操作数是否被注册来识别部分冗余的负载。