smoke_asm_test12.nx source
↩ module page · 14 lines · 474 B
1// smoke_asm_test12.nx -- addi with negative immediate.
2
3import "syscalls.nx"
4import "nxasm_v2.nx"
5
6func main() -> i64 {
7 let s: *u8 = "addi sp, sp, -16\n"
8 let out: *u8 = alloc(64)
9 let n: i64 = assemble(s, 17, out, 64)
10 if n == -2 { return __syscall(93, 202, 0, 0, 0, 0, 0) }
11 if n == -3 { return __syscall(93, 203, 0, 0, 0, 0, 0) }
12 if n < 0 { return __syscall(93, 200, 0, 0, 0, 0, 0) }
13 return __syscall(93, n & 0xFF, 0, 0, 0, 0, 0)
14}