pub struct MemoryPlan {
pub num_slots: usize,
pub node_to_slot: HashMap<usize, usize>,
pub lifetimes: Vec<ValueLifetime>,
pub free_points: Vec<(usize, usize)>,
pub reuse_count: usize,
}Expand description
The memory plan for a compiled graph — maps NodeIds to buffer slots and tracks lifetimes for dead value elimination.
Fields§
§num_slots: usizeNumber of buffer slots needed.
node_to_slot: HashMap<usize, usize>Mapping from NodeId → buffer slot.
lifetimes: Vec<ValueLifetime>Lifetime of each slot.
free_points: Vec<(usize, usize)>Free instructions to insert (slot, after_instruction_idx).
reuse_count: usizeNumber of buffers reused.
Trait Implementations§
Source§impl Clone for MemoryPlan
impl Clone for MemoryPlan
Source§fn clone(&self) -> MemoryPlan
fn clone(&self) -> MemoryPlan
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for MemoryPlan
impl RefUnwindSafe for MemoryPlan
impl Send for MemoryPlan
impl Sync for MemoryPlan
impl Unpin for MemoryPlan
impl UnwindSafe for MemoryPlan
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more