Skip to main content

Crate vyre_reference

Crate vyre_reference 

Source
Expand description

Pure Rust reference interpreter for vyre IR programs.

This module is the executable specification for IR semantics. It is intentionally slow and direct: every current IR expression and node variant has a named evaluator function.

Re-exports§

pub use interp::run;

Modules§

atomics
Atomic operation reference implementations. Atomic operation semantics enforced by the parity engine.
cpu_op
CPU operation traits used by concrete reference implementations. CPU reference execution contract for operation implementations.
dual
Dual-reference trait and registry types. Dual-dispatch resolver for the parity engine.
eval_expr
Expression evaluator (BinOp, UnOp, Load, Call, etc). Expression evaluator that gives the parity engine a pure-Rust ground truth for every Expr variant.
eval_node
Statement evaluator (Let, Store, If, Loop, Barrier, etc). Statement executor that gives the parity engine a pure-Rust ground truth for every Node variant.
flat_cpu
Flat byte adapter used by crate::cpu_op::CpuOp. Flat byte adapter that turns every CPU reference into a uniform byte-in, byte-out contract.
hash
Re-export of vyre’s canonical hash primitives (MD5, SHA1/2/3, BLAKE2/3, RIPEMD160, SipHash, xxHash, HMAC, KDF). The canonical implementations live in vyre::ops::hash::reference so that core ops and the IR interpreter agree byte-for-byte; this re-export keeps the vyre_reference::hash::… path stable for downstream consumers. Pure-Rust reference implementations of cryptographic and non-cryptographic hash algorithms used for GPU parity verification.
ieee754
IEEE 754 strict floating-point utilities. IEEE 754 float rules enforced by the parity engine.
interp
Top-level interpreter entry point and error types. Top-level interpreter dispatch — the parity engine’s executable specification.
primitive
Operation-specific standalone CPU references. Standalone primitive-operation CPU references.
value
Runtime value representation for interpreter inputs and outputs. Runtime values accepted and returned by the core reference interpreter.
workgroup
Workgroup simulation: invocation IDs, shared memory. Workgroup simulation — the parity engine’s model of invocation coordination.

Functions§

dual_op_ids
Return the complete list of operation IDs that have dual references registered.
resolve_dual
Resolve an operation ID to its two independently-written references.