src/share/vm/opto/phaseX.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
6866651 Cdiff src/share/vm/opto/phaseX.cpp
src/share/vm/opto/phaseX.cpp
Print this page
*** 1620,1632 ****
set_req(i, n);
// old goes dead?
if( old ) {
switch (old->outcnt()) {
! case 0: // Kill all his inputs, and recursively kill other dead nodes.
if (!old->is_top())
! igvn->remove_dead_node( old );
break;
case 1:
if( old->is_Store() || old->has_special_unique_user() )
igvn->add_users_to_worklist( old );
break;
--- 1620,1634 ----
set_req(i, n);
// old goes dead?
if( old ) {
switch (old->outcnt()) {
! case 0:
! // Put into the worklist to kill later. We do not kill it now because the
! // recursive kill will delete the current node (this) if dead-loop exists
if (!old->is_top())
! igvn->_worklist.push( old );
break;
case 1:
if( old->is_Store() || old->has_special_unique_user() )
igvn->add_users_to_worklist( old );
break;
src/share/vm/opto/phaseX.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File