diff options
Diffstat (limited to 'ir/regalloc.c')
| -rw-r--r-- | ir/regalloc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/ir/regalloc.c b/ir/regalloc.c index e060ebf..6706905 100644 --- a/ir/regalloc.c +++ b/ir/regalloc.c @@ -376,7 +376,10 @@ lowerphis(struct rega *ra, struct block *blk, struct block *suc) DBG(" phi had R%d\n", to.a); } else { to = ra->intervals.temps[phi - instrtab].alloc; - assert(to.t != ADEAD); + if (to.t == ADEAD) { + DBG(" skip dead phi\n"); + continue; + } DBG(" found phi %c%d\n", " RS"[to.t], to.a); if (to.t == AREG) phi->reg = to.a+1; |