From dd21392ea30844c36e964cab62c0145584f92086 Mon Sep 17 00:00:00 2001 From: lemon Date: Sun, 21 Dec 2025 11:16:20 +0100 Subject: rega: fix 3ff0bfcb --- ir/regalloc.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'ir') diff --git a/ir/regalloc.c b/ir/regalloc.c index c1d925d..c8893b7 100644 --- a/ir/regalloc.c +++ b/ir/regalloc.c @@ -1221,11 +1221,8 @@ fini(struct rega *ra) if (p == blk || (p->s2 && !blk->s1)) delet = 0; } - startbbvisit(); for (int i = 0; i < blk->npred; ++i) { struct block *p = blkpred(blk, i); - if (wasvisited(p)) break; - markvisited(p); if (!p->s2 && !blk->s1) { /* simplify: * @@ -1239,7 +1236,7 @@ fini(struct rega *ra) assert(p->s1 == blk); p->jmp.t = blk->jmp.t; p->s1 = NULL; - } else if (blk->s1) { + } else if (blk->s1 && blk->s1 != blk) { /* simplify: * * @p: -- cgit v1.2.3