From fa9777c2a890eb535bd88c6e15b6cdc0616465f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robin=20B=C3=A4rtschi?= Date: Thu, 13 Mar 2025 10:52:34 +0100 Subject: [PATCH] there has never been a stupider person then me we use 64 bit integers, but only reserve 4 bytes for them, well, that is in fact not enough. They were overwriting each other, which caused some problems ;-) --- asm/amd64/codegen.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asm/amd64/codegen.go b/asm/amd64/codegen.go index 56ae148..422e962 100644 --- a/asm/amd64/codegen.go +++ b/asm/amd64/codegen.go @@ -313,7 +313,7 @@ func pseudoToStack(op Operand, r *replacePseudoPass) Operand { if offset, ok := r.identToOffset[string(pseudo)]; ok { return Stack(offset) } else { - r.currentOffset -= 4 + r.currentOffset -= 8 r.identToOffset[string(pseudo)] = r.currentOffset return Stack(r.currentOffset) }