code wiki / _hdl_build / nx_reader_page_gate.nx

nx_reader_page_gate.nx

buildroot/runtime/_hdl_build/nx_reader_page_gate.nx

6118 B97 linesdepth 4pulls 6 transitivereach 0 importersview sourcekind gate/prooftopic reader
docsdependenciesstructsconstsfunctions

dependencies 4 imports · 0 importers

nx_gate_gn.nx nx_syscalls.nx nx_reader_sov.nx nx_gate_verdict.nx nx_reader_page_gate.nx

imports: nx_gate_gn.nxnx_syscalls.nxnx_reader_sov.nxnx_gate_verdict.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main gp sys_write spawn sys_fork sys_openat_wr sys_dup3 sys_mmap nxa_die sys_write ↻ sys_exit nxa_lock_take nxa_lock_addr sys_write ↻ nxa_lock_give nxa_lock_addr ↻ nxa_report_overrun sys_write ↻ nxa_dump_printable sys_write ↻ nxa_dump_sizes sys_write ↻ sys_execve sys_exit ↻ sys_wait4 gn sys_mmap ↻ sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_munmap sys_close sys_exit ↻ eq_bytes gfind gslen

structs

none

consts

none

functions

11func gp(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 }
called by 1: main calls 1: sys_write
12func gslen(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} return n }
called by 1: gfind
13func gfind(hay: *u8, hl: i64, needle: *u8) -> i64
called by 1: main calls 1: gslen
19func gexists(path: *u8) -> i64 { let fd: i64 = sys_openat_rd(path); if fd < 0 { return 0 } sys_close(fd); return 1 }
21func gwrite(path: *u8, buf: *u8, n: i64) -> i64 { let fd: i64 = sys_openat_wr(path, 0x1a4); if fd<0 {return 0-1} sys_write(fd, buf, n); sys_close(fd); return n }
22func eq_bytes(a: *u8, an: i64, b: *u8, bn: i64) -> i64 { if an != bn { return 0 } var i: i64=0; while i<an { if a[i]!=b[i]{return 0} i=i+1 } return 1 }
called by 1: main
24func spawn(path: *u8, a0: *u8, a1: *u8, redir: *u8) -> i64
45func main() -> i64