Enum cranelift_codegen::machinst::blockorder::LoweredBlock [−][src]
The origin of a block in the lowered block-order: either an original CLIF block, or an inserted edge-block, or a combination of the two if an edge is non-critical.
Variants
Block in original CLIF, with no merged edge-blocks.
Fields of Orig
block: Block
Original CLIF block.
Block in the original CLIF, plus edge-block to one succ (which is the one successor of the original block).
Fields of OrigAndEdge
Block in the original CLIF, preceded by edge-block from one pred (which is the one pred of the original block).
Fields of EdgeAndOrig
Split critical edge between two CLIF blocks. This lowered block does not
correspond to any original CLIF blocks; it only serves as an insertion
point for work to happen on the transition from pred
to succ
.
Fields of Edge
Implementations
impl LoweredBlock
[src]
pub fn orig_block(self) -> Option<Block>
[src]
The associated original (CLIF) block included in this lowered block, if any.
pub fn in_edge(self) -> Option<(Block, Inst, Block)>
[src]
The associated in-edge, if any.
pub fn out_edge(self) -> Option<(Block, Inst, Block)>
[src]
the associated out-edge, if any. Also includes edge-only blocks.
Trait Implementations
impl Clone for LoweredBlock
[src]
fn clone(&self) -> LoweredBlock
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for LoweredBlock
[src]
impl Debug for LoweredBlock
[src]
impl Eq for LoweredBlock
[src]
impl Hash for LoweredBlock
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl PartialEq<LoweredBlock> for LoweredBlock
[src]
fn eq(&self, other: &LoweredBlock) -> bool
[src]
fn ne(&self, other: &LoweredBlock) -> bool
[src]
impl StructuralEq for LoweredBlock
[src]
impl StructuralPartialEq for LoweredBlock
[src]
Auto Trait Implementations
impl RefUnwindSafe for LoweredBlock
impl Send for LoweredBlock
impl Sync for LoweredBlock
impl Unpin for LoweredBlock
impl UnwindSafe for LoweredBlock
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> CallHasher for T where
T: Hash,
[src]
T: Hash,
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
pub fn equivalent(&self, key: &K) -> bool
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,