smoke_asm_b13.nx source
↩ module page · 12 lines · 418 B
1// Two `.text` directives, label, 4 inst. (Two-directive pattern test.)
2import "syscalls.nx"
3import "nxasm_v2.nx"
4
5func main() -> i64 {
6 let s: *u8 = ".text\n.text\nmain:\naddi sp, sp, -16\nsd ra, 8(sp)\nli a0, 30\nret\n"
7 var sl: i64 = 0
8 while s[sl] != 0 { sl = sl + 1 }
9 let out: *u8 = alloc(64)
10 let n: i64 = assemble(s, sl, out, 64)
11 return __syscall(93, n & 0xFF, 0, 0, 0, 0, 0)
12}