7089632: assert(machtmp->outcnt() == 1) failed: expected for a MachTemp
Replace assert with check to delete MachTemp nodes only when they are really dead. Reviewed-by: never
This commit is contained in:
parent
1f8f1f79be
commit
e756c96259
@ -100,10 +100,13 @@ int PhaseChaitin::yank_if_dead( Node *old, Block *current_block, Node_List *valu
|
||||
Node *tmp = NULL;
|
||||
for (uint i = 1; i < old->req(); i++) {
|
||||
if (old->in(i)->is_MachTemp()) {
|
||||
// handle TEMP inputs
|
||||
Node* machtmp = old->in(i);
|
||||
assert(machtmp->outcnt() == 1, "expected for a MachTemp");
|
||||
blk_adjust += yank(machtmp, current_block, value, regnd);
|
||||
machtmp->disconnect_inputs(NULL);
|
||||
if (machtmp->outcnt() == 1) {
|
||||
assert(machtmp->unique_out() == old, "sanity");
|
||||
blk_adjust += yank(machtmp, current_block, value, regnd);
|
||||
machtmp->disconnect_inputs(NULL);
|
||||
}
|
||||
} else {
|
||||
assert(tmp == NULL, "can't handle more non MachTemp inputs");
|
||||
tmp = old->in(i);
|
||||
|
Loading…
x
Reference in New Issue
Block a user