src/share/vm/opto/loopTransform.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 8148754-cr Cdiff src/share/vm/opto/loopTransform.cpp

src/share/vm/opto/loopTransform.cpp

Print this page

        

*** 1460,1474 **** Node *bol = iff->in(1); assert( bol->Opcode() == Op_Bool, "" ); Node *cmp = bol->in(1); assert( cmp->Opcode() == Op_CmpI, "" ); opaq = cmp->in(2); ! // Occasionally it's possible for a zero-trip guard Opaque1 node to be ! // optimized away and then another round of loop opts attempted. ! // We can not optimize this particular loop in that case. ! if (opaq->Opcode() != Op_Opaque1) ! return; // Cannot find zero-trip guard! Bail out! // Zero-trip test uses an 'opaque' node which is not shared. assert(opaq->outcnt() == 1 && opaq->in(1) == limit, ""); } C->set_major_progress(); --- 1460,1470 ---- Node *bol = iff->in(1); assert( bol->Opcode() == Op_Bool, "" ); Node *cmp = bol->in(1); assert( cmp->Opcode() == Op_CmpI, "" ); opaq = cmp->in(2); ! assert(opaq->Opcode() == Op_Opaque1, ""); // Zero-trip test uses an 'opaque' node which is not shared. assert(opaq->outcnt() == 1 && opaq->in(1) == limit, ""); } C->set_major_progress();
src/share/vm/opto/loopTransform.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File