code wiki / (root) / nx_smoke_nxc_pipeline12.nx

nx_smoke_nxc_pipeline12.nx source

↩ module page · 34 lines · 1152 B

1// lex+parse+opt only. 2// nx_safety_envelope: 3// intended_use: AUTO_APPLIED -- primitive-specific tuning queued 4// sil_target: SIL1 5// evidence: [bulk_applied_2026-05-16, see-file-comment-for-detail] 6// verdict: NOT_YET_EVALUATED 7 8import "nx_syscalls.nx" 9import "nx_types.nx" 10import "nx_lex_kinds.nx" 11import "nx_outbuf.nx" 12import "nx_ir.nx" 13import "nx_tokenizer.nx" 14import "nx_parse.nx" 15import "nx_opt.nx" 16import "elf_writer.nx" 17 18func main() -> i64 { 19 let demo: *u8 = "func main() -> i64 { return __syscall(93, 30, 0, 0, 0, 0, 0) }" 20 let toks: *Tok = lex_source(demo, 4096) 21 let m: *Module = parse_module(toks, 0 as *Module) 22 var fi: i64 = 0 23 while fi < m.n_functions { 24 let fn_base: i64 = m.functions as i64 25 let f: *Function = (fn_base + fi * 176) as *Function 26 opt_run(f) 27 fi = fi + 1 28 } 29 let fresh_code: *u8 = sys_mmap(64) 30 fresh_code[0] = 0x67; fresh_code[1] = 0x80; fresh_code[2] = 0; fresh_code[3] = 0 31 let n: i64 = write_elf(fresh_code, 4, 2) 32 if n < 0 { return __syscall(93, 50, 0, 0, 0, 0, 0) } 33 return __syscall(93, 42, 0, 0, 0, 0, 0) 34}