code wiki / _hdl_build / nx_vsbench.nx

nx_vsbench.nx

buildroot/runtime/_hdl_build/nx_vsbench.nx

22085 B352 linesdepth 2pulls 2 transitivereach 0 importersview sourcekind bench
docsdependenciesstructsconstsfunctions

about

nx_vsbench.nx -- THE HEAD-TO-HEAD VS-RULER: are we BETTER than the reference titles, or do we merely have the same feature LIST? nx_gamebench scores capability PRESENCE (HAVE/PARTIAL/GAP) against each title's declared vector. Presence can prove PARITY OF FEATURE LIST and nothing more -- its own honest block already says so: titles_reference_run = 0. This organ is the instrument that makes "better" ARITHMETIC instead of opinion. THE CONTRACT: a head-to-head CELL is (title, axis, ours_permil, theirs_permil, evidence_tier). tier 3 EXT = measured from a captured artifact that EXISTS ON DISK (the only tier that counts) tier 2 DOC = a published spec/manual figure tier 1 DECL = our own declaration (weakest -- this is what a self-graded board is made of) The headline beat_index_permil is computed over TIER-3 CELLS ONLY. Declarations can never raise it. With ZERO ext cells the headline is 0 and the verdict is UNGROUNDED -- which is exactly what it must say today, because we have never run a reference title head-to-head. Everything we BELIEVE about our structural advantages is emitted as HYPOTHESIS-NOT-CLAIM until a cell carries real evidence. That is the cynical-instruments law applied to the one number that could flatter us most. A SECOND QUEUE, DELIBERATELY: nx_gamebench's gap_queue ranks by titles_blocked = a PARITY objective ("what unblocks the most titles"). It structurally cannot answer "what makes us BETTER" -- which is why genetics-breeding sits near the bottom there (only Breeders needs it) while being one of the few axes where a generative emitter can beat a hand-authored roster outright. vsbench publishes the ADVANTAGE view beside it. Two objectives, two queues, both honest. license_tier: ORIGINAL No hw writes (Rule 26). expect_exit: 0

dependencies 1 imports · 0 importers

nx_syscalls.nx nx_vsbench.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 sys_mmap slen ocat vs_verdict vs_tierstr sys_write vs_clsstr onum sys_mmap ↻

structs

none

consts

24const VS_MAGIC_1094: i64 = 1094
25const VS_MAGIC_2173: i64 = 2173
26const VS_MAGIC_3907: i64 = 3907
28const VS_OUT: i64 = 262144
29const VS_TIER_EXT: i64 = 3
30const VS_TIER_DOC: i64 = 2
31const VS_TIER_DECL: i64 = 1
32const VS_CELLCAP: i64 = 256
33const VS_UNMEASURED: i64 = 0 - 1

functions

35func ocat(o: *u8, at: i64, s: *u8) -> i64 { var i: i64=0; var a: i64=at; while s[i]!=(0 as u8){o[a]=s[i]; a=a+1; i=i+1} return a }
called by 1: main
36func onum(o: *u8, at: i64, v: i64) -> i64
called by 1: main calls 1: sys_mmap
48func slen(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8) { n=n+1 } return n }
called by 1: main
51func vs_verdict(mine: i64, theirs: i64) -> *u8
called by 1: main
56func vs_tierstr(t: i64) -> *u8
called by 1: main
62func vs_clsstr(c: i64) -> *u8
called by 1: main
67func main(argc: i64, argv: *i64) -> i64