Mercurial > hg > graal-jvmci-8
comparison src/share/vm/opto/loopnode.hpp @ 1621:6027dddc26c6
6677629: PhaseIterGVN::subsume_node() should call hash_delete() and add_users_to_worklist()
Summary: Use replace_node() method instead of subsume_node().
Reviewed-by: jrose, never
author | kvn |
---|---|
date | Mon, 28 Jun 2010 14:54:39 -0700 |
parents | c18cbe5936b8 |
children | d6f45b55c972 |
comparison
equal
deleted
inserted
replaced
1620:d678e3277048 | 1621:6027dddc26c6 |
---|---|
624 // Nodes always have DU info now, so re-use the side array slot | 624 // Nodes always have DU info now, so re-use the side array slot |
625 // for this node to provide the forwarding pointer. | 625 // for this node to provide the forwarding pointer. |
626 _nodes.map( old_node->_idx, (Node*)((intptr_t)new_node + 1) ); | 626 _nodes.map( old_node->_idx, (Node*)((intptr_t)new_node + 1) ); |
627 } | 627 } |
628 void lazy_replace( Node *old_node, Node *new_node ) { | 628 void lazy_replace( Node *old_node, Node *new_node ) { |
629 _igvn.hash_delete(old_node); | 629 _igvn.replace_node( old_node, new_node ); |
630 _igvn.subsume_node( old_node, new_node ); | |
631 lazy_update( old_node, new_node ); | 630 lazy_update( old_node, new_node ); |
632 } | 631 } |
633 void lazy_replace_proj( Node *old_node, Node *new_node ) { | 632 void lazy_replace_proj( Node *old_node, Node *new_node ) { |
634 assert( old_node->req() == 1, "use this for Projs" ); | 633 assert( old_node->req() == 1, "use this for Projs" ); |
635 _igvn.hash_delete(old_node); // Must hash-delete before hacking edges | 634 _igvn.hash_delete(old_node); // Must hash-delete before hacking edges |