pub struct LicmInstruction {
pub id: usize,
pub expr: String,
pub uses: Vec<usize>,
pub defs: Vec<usize>,
pub is_invariant: bool,
}Expand description
A single instruction within a CFG block, used for LICM analysis.
Fields§
§id: usizeUnique instruction identifier.
expr: StringHuman-readable expression string.
uses: Vec<usize>Identifiers of values this instruction uses as operands.
defs: Vec<usize>Identifiers defined (written) by this instruction.
is_invariant: boolWhether this instruction has been determined to be loop-invariant.
Trait Implementations§
Source§impl Clone for LicmInstruction
impl Clone for LicmInstruction
Source§fn clone(&self) -> LicmInstruction
fn clone(&self) -> LicmInstruction
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 moreAuto Trait Implementations§
impl Freeze for LicmInstruction
impl RefUnwindSafe for LicmInstruction
impl Send for LicmInstruction
impl Sync for LicmInstruction
impl Unpin for LicmInstruction
impl UnsafeUnpin for LicmInstruction
impl UnwindSafe for LicmInstruction
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