'btr' LIR transformation replaces branch instructions with conditional CMOVcc or SETcc instructions
The algorithm takes one-pass over CFG.
The transformation allows to reduce count of branches and is recommended to be inserted before other LIR transformations

The algorithm works as follows:

     1)    Finds branch instruction which performs branch to basic blocks with
         only instructions MOV with the same def-operand.
     2)    If each of thus blocks has only one predecessor they and branch 
         instruction is replaced with conditional instruction

implementation file: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/jitrino/src/codegenerator/ia32/Ia32BranchTrans.cpp

Jitrino_OPT/btr (last edited 2009-09-20 21:54:55 by localhost)