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

pub struct ABICallerImpl<M: ABIMachineSpec> { /* fields omitted */ }
Expand description

ABI object for a callsite.

Implementations

Create a callsite ABI object for a call directly to the specified function.

Create a callsite ABI object for a call to a function pointer with the given signature.

Trait Implementations

The instruction type for the ISA associated with this ABI.

Access the (possibly legalized) signature.

Get the number of arguments expected.

Accumulate outgoing arguments. This ensures that the caller (as identified via the CTX argument) allocates enough space in the prologue to hold all arguments and return values for this call. There is no code emitted at the call site, everything is done in the caller’s function prologue. Read more

Emit code to pre-adjust the stack, prior to argument copies and call.

fn emit_stack_post_adjust<C: LowerCtx<I = Self::I>>(&self, ctx: &mut C)[src]

Emit code to post-adjust the satck, after call return and return-value copies.

Emit a copy of an argument value from a source register, prior to the call.

Specific order for copying into arguments at callsites. We must be careful to copy into StructArgs first, because we need to be able to invoke memcpy() before we’ve loaded other arg regs (see above). Read more

Emit a copy a return value into a destination register, after the call returns.

Emit the call itself. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.