code wiki / (root) / nx_nxa_morf_malformed_gate.nx

nx_nxa_morf_malformed_gate.nx

buildroot/runtime/nx_nxa_morf_malformed_gate.nx

13334 B264 linesdepth 3pulls 6 transitivereach 0 importersview sourcekind gate/prooftopic nxa
docsdependenciesstructsconstsfunctions

about

nx_nxa_morf_malformed_gate.nx -- drive the promoted evaluator with checksum-valid shape/arithmetic counterexamples. Every refusal must preserve an existing output. Test fixture dimensions and values are data, not production policy. license_tier: ORIGINAL; no hardware writes; expect_exit: 0

dependencies 5 imports · 0 importers

nx_syscalls.nx nx_gate_verdict.nx nx_gatekit_lib.nx nx_nxa.nx nx_estate_path.nx nx_nxa_morf_malformed_gate.nx

imports: nx_syscalls.nxnx_gate_verdict.nxnx_gatekit_lib.nxnx_nxa.nxnx_estate_path.nx

imported by: nobody (leaf or entry point)

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

main ep_anchor sys_openat_rd sys_close sys_chdir 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 ↻ gv_puts sys_write ↻ sys_mmap ↻ mb_pathlen mb_basename mb_join sys_mmap ↻ mb_pathlen ↻ gk_cat sys_mkdir gv_ctr sys_mmap ↻ gv_head gv_puts ↻ gk_exists sys_openat_rd ↻ sys_close ↻ gv_check gv_puts ↻ gv_verdict

structs

43struct MbRun

consts

11const MB_ELF: *u8 = "./nx_nxa_morf.elf"
12const MB_DIR: *u8 = "/tmp/nxmorfmalformed"
13const MB_IN: *u8 = "/tmp/nxmorfmalformed/input.nxa"
14const MB_OUT: *u8 = "/tmp/nxmorfmalformed/output.nxa"
15const MB_SENTINEL: *u8 = "NXA-OUTPUT-KEEP\n"
16const MB_WORD: i64 = 8
17const MB_HEAD: i64 = 4
18const MB_ENTRY: i64 = 4
19const MB_SECTIONS: i64 = 3
20const MB_AXES: i64 = 3
21const MB_VERTICES: i64 = 3
22const MB_FACES: i64 = 2
23const MB_FACE_HEAD: i64 = 4
24const MB_MORF_HEAD: i64 = 4
25const MB_CHANNEL_REC: i64 = 2
26const MB_UNIT: i64 = 1000
27const MB_VWORDS: i64 = 1 + MB_VERTICES*MB_AXES
28const MB_FWORDS: i64 = MB_FACE_HEAD + MB_FACES
29const MB_MWORDS: i64 = MB_MORF_HEAD + MB_CHANNEL_REC + MB_FACES*MB_AXES
30const MB_V: i64 = MB_HEAD + MB_SECTIONS*MB_ENTRY
31const MB_F: i64 = MB_V + MB_VWORDS
32const MB_M: i64 = MB_F + MB_FWORDS
33const MB_D: i64 = MB_M + MB_MORF_HEAD + MB_CHANNEL_REC
34const MB_WORDS: i64 = MB_M + MB_MWORDS
35const MB_BYTES: i64 = MB_WORDS*MB_WORD
36const MB_USAGE: i64 = 2
37const MB_BAD: i64 = 3
38const MB_MAX: i64 = 9223372036854775807

functions

48func mb_pathlen(p: *u8) -> i64
called by 2: mb_joinmain
53func mb_join(a: *u8,b: *u8) -> *u8
called by 1: main calls 3: sys_mmapmb_pathlengk_cat
60func mb_basename(p: *u8) -> i64
called by 1: main
74func mb_len(s: *u8) -> i64
79func mb_write(path: *u8, b: *u8, n: i64) -> i64
87func mb_same(path: *u8, want: *u8, n: i64) -> i64
100func mb_recheck(h: *i64) -> i64
called by 2: mb_fixturemain calls 1: nxa_check2
111func mb_fixture() -> *i64
133func mb_positive(label: *u8, spec: *u8, h: *i64, want: *i64, ctr: *i64,run: *MbRun) -> i64
144func mb_refuse_code(label: *u8, h: *i64, size: i64, spec: *u8, expected_rc: i64, ctr: *i64,run: *MbRun) -> i64
160func mb_refuse(label: *u8, h: *i64, size: i64, spec: *u8, ctr: *i64,run: *MbRun) -> i64
called by 1: main calls 1: mb_refuse_code
163func main(argc: i64, argv: *i64) -> i64