pub struct Writeback<const N: usize> {
pub addr: u32,
pub data: [u8; N],
}Expand description
What a cache operation needs the caller to do on its behalf.
The caches deliberately do not hold a bus handle: rustyn64-cpu sees the
bus only as a &mut B borrowed for the duration of a step, and threading it
into the cache would widen that borrow across the whole pipeline. Instead a
fill or write-back is described here and performed by the caller, which
already has the bus.
Fields§
§addr: u32Physical address of the line’s first byte.
data: [u8; N]The line’s bytes.
Trait Implementations§
Source§impl<'de, const N: usize> Deserialize<'de> for Writeback<N>
impl<'de, const N: usize> Deserialize<'de> for Writeback<N>
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl<const N: usize> Copy for Writeback<N>
impl<const N: usize> Eq for Writeback<N>
impl<const N: usize> StructuralPartialEq for Writeback<N>
Auto Trait Implementations§
impl<const N: usize> Freeze for Writeback<N>
impl<const N: usize> RefUnwindSafe for Writeback<N>
impl<const N: usize> Send for Writeback<N>
impl<const N: usize> Sync for Writeback<N>
impl<const N: usize> Unpin for Writeback<N>
impl<const N: usize> UnsafeUnpin for Writeback<N>
impl<const N: usize> UnwindSafe for Writeback<N>
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