会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 3. 发明授权
    • Register allocation method and apparatus for truncating runaway
lifetimes of program variables in a computer system
    • 用于截断计算机系统中程序变量失控寿命的寄存器分配方法和装置
    • US5761514A
    • 1998-06-02
    • US522052
    • 1995-08-31
    • Nava Arela AizikowitzRoy Bar-HaimEdward Curtis ProsserRobert Ralph RoedigerWilliam Jon Schmidt
    • Nava Arela AizikowitzRoy Bar-HaimEdward Curtis ProsserRobert Ralph RoedigerWilliam Jon Schmidt
    • G06F9/45
    • G06F8/433G06F8/441
    • A method and apparatus for truncating runaway lifetimes of program variables calculates liveness for each variable based on upwardly exposed uses. Reaching definitions are then calculated for at least the program variables that have runaway lifetimes. The liveness information is compared to the reaching definition information to determine whether a variable that is live upon entry to a basic block has a definition that reaches the end of each predecessor block, or has a use within the basic block. If the reaching definition for a variable reaches the beginning of the block and if there is a predecessor block for which there is no reaching definition, the variable has a runaway lifetime. The variable also has a runaway lifetime if there is a use of the variable in a block without a reaching definition for the variable at the beginning of the block. The runaway lifetime is truncated by inserting an instruction such as a pseudo-definition of the variable into the instruction stream at an appropriate place. Once runaway lifetimes are truncated using this method, subsequent stages of the compiler may calculate liveness by performing a single dataflow analysis which calculates lifetimes based on upwardly exposed uses.
    • 用于截断程序变量的失效寿命的方法和装置根据向上暴露的使用来计算每个变量的活动性。 然后对至少具有失效寿命的程序变量计算达到定义。 将活动信息与达到的定义信息进行比较,以确定在输入到基本块时是否存在活动的变量具有到达每个前导块的结束的定义,或者在基本块内具有使用。 如果变量的到达定义到达块的开头,并且如果存在没有到达定义的前导块,则该变量具有失控的生命周期。 如果块中的变量使用块的开头处的变量没有达到定义,那么该变量也将失效。 通过在适当的地方将诸如伪变量的伪定义的指令插入指令流来截断失控生命周期。 一旦使用这种方法截断失效生命周期,编译器的后续阶段可以通过执行基于向上暴露的使用计算寿命的单个数据流分析来计算活动。