Expand description
The numeric bodies the node library and the native lowerings
share. A node in polydat-nodes is a thin wrapper over a function
here, and the JIT helper for that node calls the same function, so
the interpreter and native code compute the same bits by
construction (compiled_handles.md §6, the corner suite).
Modules§
- hash
- The SplitMix64 mixer: the body of
hashand the mix every hashing lowering inlines. - n_of_m
- The n-of-m selection: within each window of
minputs, thenwhose position hashes lowest are selected; the body ofn_ofand of its native lowering. - noise
- Coherent noise: the permutation table and the Perlin, simplex, and fractal Brownian motion algorithms, the bodies of the noise nodes and of their native lowerings.
- pcg
- The PCG-RXS-M-XS generator, its O(log N) seek, and the Feistel
cycle walk: the bodies of
pcg,pcg_stream, andcycle_walk, which the native lowerings and the comprehension strategies call. - register
- The register-lane bodies: the bounds-checked gathers, lane reads,
and lane writes the
reg_*nodes and their native lowerings share, on the word as the slots hold it, so both produce the same bits and the same message on a bad lane or window. - round_
numbers - The round-number families: the powers, Fibonacci steps, and
nearest-pick the
floor_*,ceiling_*, andclosest_*nodes and their native lowerings compute with. - vector
- The f32 vector bodies: the scalar references, the SIMD dispatch,
and the element-wise and reducing operations the
vec_*nodes and their native lowerings share, so both produce the same bytes.