--- a/hotspot/src/share/vm/opto/loopPredicate.cpp Thu Aug 24 23:54:53 2017 +0000
+++ b/hotspot/src/share/vm/opto/loopPredicate.cpp Thu Aug 24 10:26:32 2017 -0700
@@ -912,7 +912,7 @@
Node* idx = cmp->in(1);
assert(!invar.is_invariant(idx), "index is variant");
Node* rng = cmp->in(2);
- assert(rng->Opcode() == Op_LoadRange || _igvn.type(rng)->is_int() >= 0, "must be");
+ assert(rng->Opcode() == Op_LoadRange || iff->is_RangeCheck() || _igvn.type(rng)->is_int()->_lo >= 0, "must be");
assert(invar.is_invariant(rng), "range must be invariant");
int scale = 1;
Node* offset = zero;