code wiki / _hdl_build / nx_simd_sse_kat_gate.nx

nx_simd_sse_kat_gate.nx

buildroot/runtime/_hdl_build/nx_simd_sse_kat_gate.nx

5711 B127 linesdepth 2pulls 2 transitivereach 0 importersview sourcekind gate/prooftopic simd
docsdependenciesstructsconstsfunctions

about

nx_simd_sse_kat_gate.nx -- SOVEREIGN 128-bit SSE2 vector run-KAT: the FIRST rung of the sovereign VECTOR backend, proving xmm load/compute/store on REAL x86 silicon (NO gcc / NO qemu / NO binutils). AUTHOR=ORGAN, no-false-green. What it proves: the sovereign encoder+assembler now emit CORRECT 128-bit vector MEMORY load/store (nxasm_x86_enc.x86_sse_mem + the nxasm_x86 movdqu/movdqa K_MEM dispatch). It ASSEMBLES two tiny programs with the team's own _offc/nxasm_x86_main.elf and EXECUTES the resulting ELFs: POS: movdqu-load vecA=[10,0,0,0] + vecB=[32,0,0,0] (4x u32 LE); paddd -> lane0 = 42; movdqu-store; reload lane0 -> exit(42). NEG: identical, then pxor %xmm0,%xmm0 (zero) -> store -> exit(0). GREEN iff pos==42 AND neg==0 AND pos!=neg. Distinct pos/neg => the gate reads the ACTUAL silicon-computed exit, never a baked constant. This run- proves FOUR encoder forms end to end: movdqu-load(NEW) + movdqu-store(NEW) + paddd + pxor -- the latter two were only ever EMITTED (SHA-NI core), never EXECUTED until now. Foundation for the 256-bit(VEX) / 512-bit(EVEX) rungs. Writes knowledge/status/simd_vec_kat.log. license_tier: ORIGINAL

dependencies 1 imports · 0 importers

nx_syscalls.nx nx_simd_sse_kat_gate.nx

imports: nx_syscalls.nx

imported by: nobody (leaf or entry point)

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

main write_kat_s sys_openat_wr gw sys_write sys_close asm_and_run sys_mmap g_run sys_mmap ↻ sys_openat_wr ↻ sys_fork sys_dup3 sys_execve sys_exit sys_wait4 sys_close ↻ g_emit gw ↻ gwn sys_mmap ↻ sys_write ↻ sys_openat_append sys_close ↻

structs

none

consts

20const ASM_TOOL: *u8 = "_offc/nxasm_x86_main.elf"
21const SV_LOG: *u8 = "knowledge/status/simd_vec_kat.log"

functions

23func gw(fd: i64, s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(fd, s, n); return 0 }
called by 2: write_kat_sg_emit calls 1: sys_write
24func gwn(fd: i64, v: i64) -> i64
called by 1: g_emit calls 2: sys_mmapsys_write
38func g_run(path: *u8, argv: *i64) -> i64
61func asm_and_run(spath: *u8, elfpath: *u8) -> i64
called by 1: main calls 2: sys_mmapg_run
77func write_kat_s(path: *u8, zero: i64) -> i64
called by 1: main calls 3: sys_openat_wrgwsys_close
103func g_emit(fd: i64, pos: i64, neg: i64, ok: i64) -> i64
called by 1: main calls 2: gwgwn
111func main() -> i64