q/src/x86/Pop.go
2025-02-05 23:16:18 +01:00

16 lines
320 B
Go

package x86
import "git.akyoto.dev/cli/q/src/cpu"
// PopRegister pops a value from the stack and saves it into the register.
func PopRegister(code []byte, register cpu.Register) []byte {
if register >= 8 {
code = append(code, REX(0, 0, 0, 1))
register -= 8
}
return append(
code,
0x58+byte(register),
)
}