Mercurial > hg > truffle
diff src/share/vm/opto/subnode.cpp @ 14495:cd5d10655495
8027754: Enable loop optimizations for loops with MathExact inside
Reviewed-by: kvn, iveresov
author | rbackman |
---|---|
date | Thu, 23 Jan 2014 12:08:28 +0100 |
parents | de6a9e811145 |
children | 4ca6dc0799b6 968a17f18337 78bbf4d43a14 |
line wrap: on
line diff
--- a/src/share/vm/opto/subnode.cpp Mon Feb 24 15:12:26 2014 -0800 +++ b/src/share/vm/opto/subnode.cpp Thu Jan 23 12:08:28 2014 +0100 @@ -1126,11 +1126,15 @@ Node *cmp = in(1); if( !cmp->is_Sub() ) return NULL; int cop = cmp->Opcode(); - if( cop == Op_FastLock || cop == Op_FastUnlock || cop == Op_FlagsProj) return NULL; + if( cop == Op_FastLock || cop == Op_FastUnlock) return NULL; Node *cmp1 = cmp->in(1); Node *cmp2 = cmp->in(2); if( !cmp1 ) return NULL; + if (_test._test == BoolTest::overflow || _test._test == BoolTest::no_overflow) { + return NULL; + } + // Constant on left? Node *con = cmp1; uint op2 = cmp2->Opcode();