Apparatus and method for linear dead store elimination
    2.
    发明授权
    Apparatus and method for linear dead store elimination 失效
    用于线性死区消除的装置和方法

    公开(公告)号:US07444626B2

    公开(公告)日:2008-10-28

    申请号:US10942423

    申请日:2004-09-16

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4435

    摘要: An apparatus and method for removing stores to local variables that are not aliased by other variables or to variables which have already been removed by previous optimizations prior to performing dead store elimination optimization are provided. With the method and apparatus, instructions that include a memory reference to a local variable that is not modified by other instructions are identified. For these instructions, an identifier of the variable referenced is maintained in a data structure along with the location of the store instruction in the procedure (for a store instruction) or a load indicator (for a load instruction). The data structure is then traversed to see if there are any store instructions referencing a variable that does not have a corresponding load instruction referencing the same variable. Such store instructions are eliminated prior to performing traditional dead store elimination.

    摘要翻译: 提供了一种用于将存储器移除到不被其他变量别名的变量或已经在执行死存储消除优化之前已被先前的优化所去除的变量的存储的装置和方法。 利用该方法和装置,识别包括对未被其他指令修改的局部变量的存储器引用的指令。 对于这些指令,引用的变量的标识符与程序(用于存储指令)或负载指示符(对于加载指令)的存储指令的位置一起保持在数据结构中。 然后遍历数据结构以查看是否存在引用不具有引用相同变量的相应加载指令的变量的存储指令。 在执行传统的死区消除之前,消除了这种存储指令。

    Method for improving irreducible region commoning compile speed
    3.
    发明授权
    Method for improving irreducible region commoning compile speed 失效
    改进不可约区域通用编译速度的方法

    公开(公告)号:US07516448B1

    公开(公告)日:2009-04-07

    申请号:US12165403

    申请日:2008-06-30

    IPC分类号: G06F9/45

    CPC分类号: G06F8/443

    摘要: A method for improving compile speed in irreducible code regions within a computer program is disclosed. The method comprises determining which of a plurality of code regions within a computer program is irreducible, determining an influence of the irreducible code on blocks within code regions, determining a direction of processing based on the influence of the irreducible code on adjacent blocks and performing a processing based on a current direction of processing and the determined direction of processing.

    摘要翻译: 公开了一种用于提高计算机程序内不可约代码区的编译速度的方法。 该方法包括确定计算机程序中的多个代码区域中的哪一个是不可约的,确定不可约代码对代码区域内的块的影响,基于不可约代码对相邻块的影响确定处理的方向,并执行 根据当前的处理方向和确定的处理方向进行处理。

    Method and apparatus for choosing register classes and/or instruction categories
    4.
    发明授权
    Method and apparatus for choosing register classes and/or instruction categories 失效
    用于选择寄存器类和/或指令类别的方法和装置

    公开(公告)号:US07506326B2

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

    申请号:US11074131

    申请日:2005-03-07

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4441

    摘要: An improved method, apparatus, and computer instructions for generating instructions to process multiple similar expressions. Parameters are identified for the expressions in the original instructions, to form a set of identified parameters typically including the operations performed, the types of data used, and the data sizes. Each type of execution unit that can execute the instructions needed to process the expressions using the set of identified parameters is identified, wherein a set of identified execution unit types is formed. An execution unit type from the set of identified execution unit types is selected to meet a performance goal. The new instructions are generated for the selected execution unit type to process the expressions, and the original instructions for the expressions are discarded.

    摘要翻译: 一种用于产生用于处理多个相似表达的指令的改进的方法,装置和计算机指令。 为原始指令中的表达式识别参数,以形成一组已识别的参数,通常包括执行的操作,所使用的数据类型和数据大小。 识别可以执行使用所识别的参数的集合来处理表达所需的指令的每种类型的执行单元,其中形成一组所识别的执行单元类型。 从所识别的执行单元类型的集合中选择执行单元类型以满足性能目标。 为所选择的执行单元类型生成新的指令以处理表达式,表达式的原始指令将被丢弃。