equal
deleted
inserted
replaced
657 BarrierSetC2* bs = BarrierSet::barrier_set()->barrier_set_c2(); |
657 BarrierSetC2* bs = BarrierSet::barrier_set()->barrier_set_c2(); |
658 // step over g1 gc barrier if we're at e.g. a clone with ReduceInitialCardMarks off |
658 // step over g1 gc barrier if we're at e.g. a clone with ReduceInitialCardMarks off |
659 c = bs->step_over_gc_barrier(c); |
659 c = bs->step_over_gc_barrier(c); |
660 |
660 |
661 CallNode* call = NULL; |
661 CallNode* call = NULL; |
662 if (c != NULL && c->is_Region()) { |
662 guarantee(c != NULL, "step_over_gc_barrier failed, there must be something to step to."); |
|
663 if (c->is_Region()) { |
663 for (uint i = 1; i < c->req(); i++) { |
664 for (uint i = 1; i < c->req(); i++) { |
664 if (c->in(i) != NULL) { |
665 if (c->in(i) != NULL) { |
665 Node* n = c->in(i)->in(0); |
666 Node* n = c->in(i)->in(0); |
666 if (may_modify_helper(t_oop, n, phase, call)) { |
667 if (may_modify_helper(t_oop, n, phase, call)) { |
667 ac = call->isa_ArrayCopy(); |
668 ac = call->isa_ArrayCopy(); |