pub enum FourStateValue {
Narrow(u128),
Wide {
aval: Vec<u64>,
bval: Vec<u64>,
},
}Expand description
STATE’s cross-subsystem four-state value representation (state.md §3/§5,
ledger ST-008, ST-009, ST-099, ST-120): Narrow mirrors the accessor ABI’s
FIXED inline u128 word (ARCHITECTURE §6.2 / ST-008: val in the low 64
bits, unk/xzmask in the high 64 bits, regardless of bit_width —
sv_sim_abi::bit4-compatible; not sv-sim-codegen::value’s internal,
width-tight i(2N) LLVM packing, which uses a different bit offset for any
width < 64 — see sv_sim_abi::accessor’s doc comment); Wide mirrors the
aval/bval word planes (sv_sim_abi::WideView-compatible).
Reference/introspection shape only (VPI/$display/debugger/harness) —
never the codegen-emitted hot path, which calls the accessor ABI directly.
Variants§
Implementations§
Trait Implementations§
Source§impl Clone for FourStateValue
impl Clone for FourStateValue
Source§impl Debug for FourStateValue
impl Debug for FourStateValue
Source§impl PartialEq for FourStateValue
impl PartialEq for FourStateValue
impl StructuralPartialEq for FourStateValue
Auto Trait Implementations§
impl Freeze for FourStateValue
impl RefUnwindSafe for FourStateValue
impl Send for FourStateValue
impl Sync for FourStateValue
impl Unpin for FourStateValue
impl UnsafeUnpin for FourStateValue
impl UnwindSafe for FourStateValue
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more