src/share/vm/opto/node.cpp

changeset 7041
411e30e5fbb8
parent 6680
78bbf4d43a14
child 7127
91cb3b8aac2b
equal deleted inserted replaced
7040:da00a41842a5 7041:411e30e5fbb8
525 } 525 }
526 // cloning CallNode may need to clone JVMState 526 // cloning CallNode may need to clone JVMState
527 if (n->is_Call()) { 527 if (n->is_Call()) {
528 n->as_Call()->clone_jvms(C); 528 n->as_Call()->clone_jvms(C);
529 } 529 }
530 if (n->is_SafePoint()) {
531 n->as_SafePoint()->clone_replaced_nodes();
532 }
530 return n; // Return the clone 533 return n; // Return the clone
531 } 534 }
532 535
533 //---------------------------setup_is_top-------------------------------------- 536 //---------------------------setup_is_top--------------------------------------
534 // Call this when changing the top node, to reassert the invariants 537 // Call this when changing the top node, to reassert the invariants
619 if (is_macro()) { 622 if (is_macro()) {
620 compile->remove_macro_node(this); 623 compile->remove_macro_node(this);
621 } 624 }
622 if (is_expensive()) { 625 if (is_expensive()) {
623 compile->remove_expensive_node(this); 626 compile->remove_expensive_node(this);
627 }
628 if (is_SafePoint()) {
629 as_SafePoint()->delete_replaced_nodes();
624 } 630 }
625 #ifdef ASSERT 631 #ifdef ASSERT
626 // We will not actually delete the storage, but we'll make the node unusable. 632 // We will not actually delete the storage, but we'll make the node unusable.
627 *(address*)this = badAddress; // smash the C++ vtbl, probably 633 *(address*)this = badAddress; // smash the C++ vtbl, probably
628 _in = _out = (Node**) badAddress; 634 _in = _out = (Node**) badAddress;

mercurial