pub struct InstructionAllocationFacts<V, R> {
pub uses: Vec<V>,
pub defs: Vec<V>,
pub constraints: InstructionConstraints<V, R>,
pub is_copy: bool,
}Expand description
Register-allocation facts for one target-owned machine instruction.
This deliberately contains no opcode. Backends lower their own MIR into these facts so allocation algorithms do not need a common machine IR or a target instruction enum.
Fields§
§uses: Vec<V>§defs: Vec<V>§constraints: InstructionConstraints<V, R>§is_copy: boolHint used by allocators which perform copy coalescing.
Trait Implementations§
Source§impl<V: Clone, R: Clone> Clone for InstructionAllocationFacts<V, R>
impl<V: Clone, R: Clone> Clone for InstructionAllocationFacts<V, R>
Source§fn clone(&self) -> InstructionAllocationFacts<V, R>
fn clone(&self) -> InstructionAllocationFacts<V, R>
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<V, R> Default for InstructionAllocationFacts<V, R>
impl<V, R> Default for InstructionAllocationFacts<V, R>
impl<V: Eq, R: Eq> Eq for InstructionAllocationFacts<V, R>
impl<V: PartialEq, R: PartialEq> StructuralPartialEq for InstructionAllocationFacts<V, R>
Auto Trait Implementations§
impl<V, R> Freeze for InstructionAllocationFacts<V, R>
impl<V, R> RefUnwindSafe for InstructionAllocationFacts<V, R>
impl<V, R> Send for InstructionAllocationFacts<V, R>
impl<V, R> Sync for InstructionAllocationFacts<V, R>
impl<V, R> Unpin for InstructionAllocationFacts<V, R>
impl<V, R> UnsafeUnpin for InstructionAllocationFacts<V, R>
impl<V, R> UnwindSafe for InstructionAllocationFacts<V, R>
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