code wiki / _hdl_build / _f64_soak_gate_authored.nx
_f64_soak_gate_authored.nx
buildroot/runtime/_hdl_build/_f64_soak_gate_authored.nx
about
_f64_soak_gate_authored.nx -- SOVEREIGN ORACLE anchor + soak gate (ME0b + py-debt
retirement for ME0). Pure Nishi end to end: no python, no shell.
Phase 1 ANCHOR: nx_f64_oracle_sov must reproduce ALL stored expected values of the
1217-vector KAT set for ops add/sub/mul/div/sqrt. Those vectors were anchored to
hardware IEEE once; the sovereign oracle matching them transfers the anchor, after
which vector regeneration never needs python again.
Phase 2 SOAK: sovereign xorshift64* PRNG generates raw bit patterns (every class:
normals, subnormals, zeros, infs, NaNs reachable); for each, impl (nx_f64_*) vs
oracle (orc_*) must agree BIT-EXACTLY across all 5 ops.
Markers:
ANCHOR total= ok= bad= / SOAKBAD op= a= b= impl= orc= / SOAK total= bad=
F64SOAKGATE verdict=GREEN|RED
dependencies 7 imports · 0 importers
imports: nx_syscalls.nxnx_f64.nxnx_f64_div.nxnx_f64_sqrt.nxnx_f64_cvt.nxnx_f64_oracle_sov.nx_f64_kat_vectors.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| none |
functions
| 24 | func f6s_puts(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(1, s, n); return 0 } |
| 26 | func f6s_putn(v: i64) -> i64 |
| 40 | func f6s_puthex(v: i64) -> i64 |
| 53 | func f6s_rng(state: *i64) -> i64 called by 1: main |
| 62 | func f6s_orc(op: i64, a: i64, b: i64) -> i64 |
| 71 | func f6s_impl(op: i64, a: i64, b: i64) -> i64 |
| 80 | func main() -> i64 |