From 2cfd137e001758887e4f0a64db6f2f4787ff69a4 Mon Sep 17 00:00:00 2001 From: lemon Date: Wed, 22 Oct 2025 10:47:09 +0200 Subject: fix edge case codegen bugs (w/ stack offsets, spilling) --- amd64/emit.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'amd64') diff --git a/amd64/emit.c b/amd64/emit.c index f44eb3a..65b67d5 100644 --- a/amd64/emit.c +++ b/amd64/emit.c @@ -1189,7 +1189,9 @@ emitbin(struct function *fn) /* ensure stack is 16-byte aligned for function calls */ if (!fn->isleaf && ((fn->stksiz + npush*8) & 0xF) != 0x8) { + assert(usebp); fn->stksiz += 8; + rbpoff -= 4; } if (fn->stksiz != 0) { -- cgit v1.2.3