--- old/src/share/vm/opto/loopTransform.cpp 2016-02-22 15:17:21.785647649 +0100 +++ new/src/share/vm/opto/loopTransform.cpp 2016-02-22 15:17:21.641647655 +0100 @@ -1462,11 +1462,7 @@ 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! + assert(opaq->Opcode() == Op_Opaque1, ""); // Zero-trip test uses an 'opaque' node which is not shared. assert(opaq->outcnt() == 1 && opaq->in(1) == limit, ""); }