src/share/vm/opto/loopopts.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/share/vm/opto/loopopts.cpp
src/share/vm/opto/loopopts.cpp
Print this page
rev 5902 : 8027754: Enable loop optimizations for loops with MathExact inside
*** 41,56 ****
// ConvI2L may have type information on it which is unsafe to push up
// so disable this for now
return NULL;
}
- if (n->is_MathExact()) {
- // MathExact has projections that are not correctly handled in the code
- // below.
- return NULL;
- }
-
int wins = 0;
assert(!n->is_CFG(), "");
assert(region->is_Region(), "");
const Type* type = n->bottom_type();
--- 41,50 ----
*** 2360,2371 ****
int opc = n->Opcode();
if (n->is_Call() ||
opc == Op_Catch ||
opc == Op_CatchProj ||
opc == Op_Jump ||
! opc == Op_JumpProj ||
! opc == Op_FlagsProj) {
#if !defined(PRODUCT)
if (TracePartialPeeling) {
tty->print_cr("\nExit control too complex: lp: %d", head->_idx);
}
#endif
--- 2354,2364 ----
int opc = n->Opcode();
if (n->is_Call() ||
opc == Op_Catch ||
opc == Op_CatchProj ||
opc == Op_Jump ||
! opc == Op_JumpProj) {
#if !defined(PRODUCT)
if (TracePartialPeeling) {
tty->print_cr("\nExit control too complex: lp: %d", head->_idx);
}
#endif
src/share/vm/opto/loopopts.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File