From e83326806199696a3ca1b417e7aa47550cd249ac Mon Sep 17 00:00:00 2001 From: Eduard Urbach Date: Wed, 2 Jul 2025 17:37:46 +0200 Subject: [PATCH] Added register move for syscall returns --- src/ssa2asm/ValueToRegister.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/ssa2asm/ValueToRegister.go b/src/ssa2asm/ValueToRegister.go index cd8bf1f..2e341c4 100644 --- a/src/ssa2asm/ValueToRegister.go +++ b/src/ssa2asm/ValueToRegister.go @@ -50,5 +50,15 @@ func (f *Compiler) ValueToRegister(instr ssa.Value, destination cpu.Register) { Destination: destination, Source: source, }) + + case *ssa.Syscall: + if destination == f.CPU.Return[0] { + return + } + + f.Assembler.Append(&asm.MoveRegisterRegister{ + Destination: destination, + Source: f.CPU.Return[0], + }) } } \ No newline at end of file