src/share/vm/opto/phaseX.cpp

changeset 6679
968a17f18337
parent 6313
de95063c0e34
child 6681
1555c0843770
     1.1 --- a/src/share/vm/opto/phaseX.cpp	Thu May 15 18:23:26 2014 -0400
     1.2 +++ b/src/share/vm/opto/phaseX.cpp	Fri May 16 12:05:14 2014 -0700
     1.3 @@ -1379,6 +1379,15 @@
     1.4            _worklist.push(u);
     1.5        }
     1.6      }
     1.7 +    // If changed AddI/SubI inputs, check CmpU for range check optimization.
     1.8 +    if (use_op == Op_AddI || use_op == Op_SubI) {
     1.9 +      for (DUIterator_Fast i2max, i2 = use->fast_outs(i2max); i2 < i2max; i2++) {
    1.10 +        Node* u = use->fast_out(i2);
    1.11 +        if (u->is_Cmp() && (u->Opcode() == Op_CmpU)) {
    1.12 +          _worklist.push(u);
    1.13 +        }
    1.14 +      }
    1.15 +    }
    1.16      // If changed AddP inputs, check Stores for loop invariant
    1.17      if( use_op == Op_AddP ) {
    1.18        for (DUIterator_Fast i2max, i2 = use->fast_outs(i2max); i2 < i2max; i2++) {

mercurial