equal
deleted
inserted
replaced
543 if (n->is_Call()) { |
543 if (n->is_Call()) { |
544 n->as_Call()->clone_jvms(C); |
544 n->as_Call()->clone_jvms(C); |
545 } |
545 } |
546 if (n->is_SafePoint()) { |
546 if (n->is_SafePoint()) { |
547 n->as_SafePoint()->clone_replaced_nodes(); |
547 n->as_SafePoint()->clone_replaced_nodes(); |
548 } |
|
549 if (n->is_Load()) { |
|
550 n->as_Load()->copy_barrier_info(this); |
|
551 } |
548 } |
552 return n; // Return the clone |
549 return n; // Return the clone |
553 } |
550 } |
554 |
551 |
555 //---------------------------setup_is_top-------------------------------------- |
552 //---------------------------setup_is_top-------------------------------------- |
1471 // Nodes which use memory without consuming it, hence need antidependences. |
1468 // Nodes which use memory without consuming it, hence need antidependences. |
1472 bool Node::needs_anti_dependence_check() const { |
1469 bool Node::needs_anti_dependence_check() const { |
1473 if (req() < 2 || (_flags & Flag_needs_anti_dependence_check) == 0) { |
1470 if (req() < 2 || (_flags & Flag_needs_anti_dependence_check) == 0) { |
1474 return false; |
1471 return false; |
1475 } |
1472 } |
1476 BarrierSetC2* bs = BarrierSet::barrier_set()->barrier_set_c2(); |
|
1477 if (!bs->needs_anti_dependence_check(this)) { |
|
1478 return false; |
|
1479 } |
|
1480 return in(1)->bottom_type()->has_memory(); |
1473 return in(1)->bottom_type()->has_memory(); |
1481 } |
1474 } |
1482 |
1475 |
1483 // Get an integer constant from a ConNode (or CastIINode). |
1476 // Get an integer constant from a ConNode (or CastIINode). |
1484 // Return a default value if there is no apparent constant here. |
1477 // Return a default value if there is no apparent constant here. |