[][src]Struct cranelift::prelude::isa::EncInfo

pub struct EncInfo {
    pub constraints: &'static [RecipeConstraints],
    pub sizing: &'static [RecipeSizing],
    pub names: &'static [&'static str],
}

Information about all the encodings in this ISA.

Fields

constraints: &'static [RecipeConstraints]

Constraints on value operands per recipe.

sizing: &'static [RecipeSizing]

Code size information per recipe.

names: &'static [&'static str]

Names of encoding recipes.

Methods

impl EncInfo[src]

pub fn operand_constraints(
    &self,
    enc: Encoding
) -> Option<&'static RecipeConstraints>
[src]

Get the value operand constraints for enc if it is a legal encoding.

pub fn display(&self, enc: Encoding) -> DisplayEncoding[src]

Create an object that can display an ISA-dependent encoding properly.

pub fn byte_size(
    &self,
    enc: Encoding,
    inst: Inst,
    divert: &RegDiversions,
    func: &Function
) -> u32
[src]

Get the precise size in bytes of instructions encoded with enc.

Returns 0 for illegal encodings.

pub fn branch_range(&self, enc: Encoding) -> Option<BranchRange>[src]

Get the branch range that is supported by enc, if any.

This will never return None for a legal branch encoding.

Trait Implementations

impl Clone for EncInfo[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

Auto Trait Implementations

impl Unpin for EncInfo

impl Send for EncInfo

impl Sync for EncInfo

impl RefUnwindSafe for EncInfo

impl UnwindSafe for EncInfo

Blanket Implementations

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> Into<U> for T where
    U: From<T>, 
[src]

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

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.

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

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

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

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

type Owned = T

The resulting type after obtaining ownership.