Struct cranelift_codegen::machinst::abi_impl::ABICalleeImpl[][src]

pub struct ABICalleeImpl<M: ABIMachineSpec> { /* fields omitted */ }

ABI object for a function body.

Implementations

impl<M: ABIMachineSpec> ABICalleeImpl<M>[src]

pub fn new(f: &Function, flags: Flags) -> CodegenResult<Self>[src]

Create a new body ABI instance.

Trait Implementations

impl<M: ABIMachineSpec> ABICallee for ABICalleeImpl<M>[src]

type I = M::I

The instruction type for the ISA associated with this ABI.

fn load_stackslot(
    &self,
    slot: StackSlot,
    offset: u32,
    ty: Type,
    into_regs: ValueRegs<Writable<Reg>>
) -> SmallInstVec<Self::I>
[src]

Load from a stackslot.

fn store_stackslot(
    &self,
    slot: StackSlot,
    offset: u32,
    ty: Type,
    from_regs: ValueRegs<Reg>
) -> SmallInstVec<Self::I>
[src]

Store to a stackslot.

fn stackslot_addr(
    &self,
    slot: StackSlot,
    offset: u32,
    into_reg: Writable<Reg>
) -> Self::I
[src]

Produce an instruction that computes a stackslot address.

fn load_spillslot(
    &self,
    slot: SpillSlot,
    ty: Type,
    into_regs: ValueRegs<Writable<Reg>>
) -> SmallInstVec<Self::I>
[src]

Load from a spillslot.

fn store_spillslot(
    &self,
    slot: SpillSlot,
    ty: Type,
    from_regs: ValueRegs<Reg>
) -> SmallInstVec<Self::I>
[src]

Store to a spillslot.

Auto Trait Implementations

impl<M> RefUnwindSafe for ABICalleeImpl<M> where
    M: RefUnwindSafe,
    <M as ABIMachineSpec>::I: RefUnwindSafe

impl<M> Send for ABICalleeImpl<M> where
    M: Send,
    <M as ABIMachineSpec>::I: Send

impl<M> Sync for ABICalleeImpl<M> where
    M: Sync,
    <M as ABIMachineSpec>::I: Sync

impl<M> Unpin for ABICalleeImpl<M> where
    M: Unpin,
    <M as ABIMachineSpec>::I: Unpin

impl<M> UnwindSafe for ABICalleeImpl<M> where
    M: UnwindSafe,
    <M as ABIMachineSpec>::I: RefUnwindSafe + UnwindSafe

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, 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.