code wiki / (root) / nx_aesctr_ni_bench.nx

nx_aesctr_ni_bench.nx

buildroot/runtime/nx_aesctr_ni_bench.nx

3173 B86 linesdepth 5pulls 7 transitivereach 0 importersview sourcekind bench
docsdependenciesstructsconstsfunctions

about

nx_aesctr_ni_bench.nx -- direct 1:1 speedup of the AES-GCM hot path (AES-CTR block encryption): software aes128_encrypt_block vs hardware __aes128_enc_block, same key, same buffer, same tools. Must be compiled by the AES-NI-capable toolchain. expect_exit: 0 (prints both throughputs; exits nonzero only on a correctness mismatch)

dependencies 2 imports · 0 importers

nx_syscalls.nx nx_aes128_gcm.nx nx_aesctr_ni_bench.nx

imports: nx_syscalls.nxnx_aes128_gcm.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 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 ↻ aes128_expand_key _aes_sbox _aes_rcon aes128_encrypt_block b_ps sys_write ↻ b_pn sys_mmap ↻ sys_write ↻ sys_exit ↻ sys_now_ms sys_mmap ↻ sys_clock_gettime_mono nx_aes128_gcm_inc32

structs

none

consts

9const K_MAGIC_2970000: i64 = 2970000
10const K_MAGIC_1000000: i64 = 1000000

functions

12func b_ps(s: *u8, n: i64) -> i64 { sys_write(1, s, n); return 0 }
called by 1: main calls 1: sys_write
13func b_pn(v: i64) -> i64
called by 1: main calls 2: sys_mmapsys_write
24func main() -> i64