pub struct AddrMismatch {
pub label: String,
pub seg_index: usize,
pub addend: u32,
pub access_addr: u32,
pub served: u8,
pub runtime: u8,
pub span_byte: u32,
}Expand description
A single reloc that reads the wrong byte.
Fields§
§label: StringThe reloc’s diagnostic label.
seg_index: usizeThe emitted K (__synth_wasm_seg_K).
addend: u32The emitted addend.
access_addr: u32The original linear-memory access address of the OFFENDING byte
(seg[K].off + addend + span_byte).
served: u8The byte the packed .data serves at that position.
runtime: u8The byte the runtime image holds at access_addr (the truth).
span_byte: u32Which byte of the (potentially multi-byte) access diverges: 0 = the
addend byte itself (the phase-1 check), 1..MAX_ACCESS_BYTES = a
tail byte of a conservatively-widened span (phase 2).
Implementations§
Trait Implementations§
Source§impl Clone for AddrMismatch
impl Clone for AddrMismatch
Source§fn clone(&self) -> AddrMismatch
fn clone(&self) -> AddrMismatch
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AddrMismatch
impl Debug for AddrMismatch
impl Eq for AddrMismatch
Source§impl PartialEq for AddrMismatch
impl PartialEq for AddrMismatch
impl StructuralPartialEq for AddrMismatch
Auto Trait Implementations§
impl Freeze for AddrMismatch
impl RefUnwindSafe for AddrMismatch
impl Send for AddrMismatch
impl Sync for AddrMismatch
impl Unpin for AddrMismatch
impl UnsafeUnpin for AddrMismatch
impl UnwindSafe for AddrMismatch
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.