code wiki / _hdl_build / nx_fnclosure_probe.nx
nx_fnclosure_probe.nx source
↩ module page · 29 lines · 1164 B
1// nx_fnclosure_probe.nx -- seq1337 isolation, probe 3 (DECISIVE).
2// Probes 1+2 proved `fn` and `en` compile fine in a BARE file, disproving my filed root-cause.
3// Remaining hypothesis: the identifiers collide with something in THAT GATE'S import closure.
4// This reproduces the exact conditions: same two imports, same identifiers, same pc_frame call.
5// BUILDS => identifiers are innocent and the hang was environmental (stale/torn source page, seq124).
6// HANGS => the collision is real and closure-dependent.
7// license_tier: ORIGINAL expect_exit: 0 No hw writes (Rule 26).
8import "nx_procchurn_lib.nx"
9import "nx_gate_verdict.nx"
10
11const FCP_BUF: i64 = 2048
12
13func main() -> i64 {
14 let fb: *u8 = sys_mmap(FCP_BUF)
15 let eb: *u8 = sys_mmap(FCP_BUF)
16 let fn: i64 = pc_frame(fb, 1785433000, 3000, 18, 81480, 47557, 2361, 98, 231, 351, 2)
17 let en: i64 = 134
18 var same: i64 = 0
19 if fn == en {
20 var q: i64 = 0
21 var eq: i64 = 1
22 while q < fn { if fb[q] != eb[q] { eq = 0 } q = q + 1 }
23 same = eq
24 }
25 gv_puts("FNCLOSURE-PROBE compiled; frame_len=" as *u8)
26 gv_num(fn)
27 gv_puts("\n" as *u8)
28 return 0
29}