code wiki / (root) / _offc_probe_pstar.nx

_offc_probe_pstar.nx source

↩ module page · 28 lines · 765 B

1import "syscalls.nx" 2 3struct Tok { kind: i64, pad: i64 } 4struct Local { name: *u8, value_id: i64, is_alloca: i64, ty_kind: i64 } 5 6func find_local_stub(name: *u8) -> *Local { 7 let raw: *u8 = sys_mmap(64) 8 let L: *Local = raw as *Local 9 L.name = name 10 L.value_id = 7 11 L.is_alloca = 0 12 L.ty_kind = 0 13 return L 14} 15 16func main() -> i64 { 17 let name: *u8 = "p" as *u8 18 let L: *Local = find_local_stub(name) 19 if L != (0 as *Local) { 20 var addr: i64 = L.value_id 21 if L.is_alloca == 1 { 22 addr = 99 // stand-in for ir_emit_load 23 } 24 // Mirror: ir_emit_store(addr, 42, ir_type_i64()) 25 return addr * 6 // 7 * 6 = 42 -- if addr correctly == 7, we get 42 26 } 27 return 0 28}