equal
deleted
inserted
replaced
819 } else if (TraceLoopOpts) { |
819 } else if (TraceLoopOpts) { |
820 tty->print("Predicate IC "); |
820 tty->print("Predicate IC "); |
821 loop->dump_head(); |
821 loop->dump_head(); |
822 } |
822 } |
823 #endif |
823 #endif |
824 } else if (cl != NULL && loop->is_range_check_if(iff, this, invar)) { |
824 } else if ((cl != NULL) && (proj->_con == predicate_proj->_con) && |
825 assert(proj->_con == predicate_proj->_con, "must match"); |
825 loop->is_range_check_if(iff, this, invar)) { |
826 |
826 |
827 // Range check for counted loops |
827 // Range check for counted loops |
828 const Node* cmp = bol->in(1)->as_Cmp(); |
828 const Node* cmp = bol->in(1)->as_Cmp(); |
829 Node* idx = cmp->in(1); |
829 Node* idx = cmp->in(1); |
830 assert(!invar.is_invariant(idx), "index is variant"); |
830 assert(!invar.is_invariant(idx), "index is variant"); |