1186 // For all Users of the Dead... ;-) |
1186 // For all Users of the Dead... ;-) |
1187 for (DUIterator_Last kmin, k = dead->last_outs(kmin); k >= kmin; ) { |
1187 for (DUIterator_Last kmin, k = dead->last_outs(kmin); k >= kmin; ) { |
1188 Node* use = dead->last_out(k); |
1188 Node* use = dead->last_out(k); |
1189 igvn->hash_delete(use); // Yank from hash table prior to mod |
1189 igvn->hash_delete(use); // Yank from hash table prior to mod |
1190 if (use->in(0) == dead) { // Found another dead node |
1190 if (use->in(0) == dead) { // Found another dead node |
1191 assert (!use->is_Con(), "Control for Con node should be Root node.") |
1191 assert (!use->is_Con(), "Control for Con node should be Root node."); |
1192 use->set_req(0, top); // Cut dead edge to prevent processing |
1192 use->set_req(0, top); // Cut dead edge to prevent processing |
1193 nstack.push(use); // the dead node again. |
1193 nstack.push(use); // the dead node again. |
1194 } else { // Else found a not-dead user |
1194 } else { // Else found a not-dead user |
1195 for (uint j = 1; j < use->req(); j++) { |
1195 for (uint j = 1; j < use->req(); j++) { |
1196 if (use->in(j) == dead) { // Turn all dead inputs into TOP |
1196 if (use->in(j) == dead) { // Turn all dead inputs into TOP |