smoke_asm_b22.nx source
↩ module page · 13 lines · 469 B
1// test22 with li -> mv (so 4 inst, all reg-reg or reg-imm-reg)
2// addi sp, sp, -16 ; sd ra, 8(sp) ; mv a0, t0 ; ret
3import "syscalls.nx"
4import "nxasm_v2.nx"
5
6func main() -> i64 {
7 let s: *u8 = ".text\n.globl main\nmain:\naddi sp, sp, -16\nsd ra, 8(sp)\nmv a0, t0\nret\n"
8 var sl: i64 = 0
9 while s[sl] != 0 { sl = sl + 1 }
10 let out: *u8 = alloc(64)
11 let n: i64 = assemble(s, sl, out, 64)
12 return __syscall(93, n & 0xFF, 0, 0, 0, 0, 0)
13}