[][src]Enum regalloc::AnalysisError

pub enum AnalysisError {
    CriticalEdge {
        from: BlockIx,
        to: BlockIx,
    },
    EntryLiveinValues,
    IllegalRealReg(RealReg),
    UnreachableBlocks,
    ImplementationLimitsExceeded,
}

Variants

CriticalEdge

A critical edge from "from" to "to" has been found, and should have been removed by the caller in the first place.

Fields of CriticalEdge

from: BlockIxto: BlockIx
EntryLiveinValues

Some values in the entry block are live in to the function, but are not declared as such.

IllegalRealReg(RealReg)

The incoming code has an explicit or implicit mention (use, def or mod) of a real register, which either (1) isn't listed in the universe at all, or (2) is one of the suggested_scratch registers in the universe. (1) isn't allowed because the client must mention all real registers in the universe. (2) isn't allowed because the client promises to us that the suggested_scratch registers really are completely unused in the incoming code, so that the allocator can use them at literally any point it wants.

UnreachableBlocks

At least one block is dead.

ImplementationLimitsExceeded

Implementation limits exceeded. The incoming function is too big. It may contain at most 1 million basic blocks and 16 million instructions.

Trait Implementations

impl Clone for AnalysisError[src]

impl Debug for AnalysisError[src]

impl ToString for AnalysisError[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.