Enum cranelift_codegen::isa::CallConv [−][src]
pub enum CallConv {
Fast,
Cold,
SystemV,
WindowsFastcall,
AppleAarch64,
BaldrdashSystemV,
BaldrdashWindows,
Baldrdash2020,
Probestack,
WasmtimeSystemV,
WasmtimeFastcall,
WasmtimeAppleAarch64,
}
Expand description
Calling convention identifiers.
Variants
Fast
Best performance, not ABI-stable.
Cold
Smallest caller code size, not ABI-stable.
SystemV
System V-style convention used on many platforms.
WindowsFastcall
Windows “fastcall” convention, also used for x64 and ARM.
AppleAarch64
Mac aarch64 calling convention, which is a tweaked aarch64 ABI.
BaldrdashSystemV
SpiderMonkey WebAssembly convention on systems using natively SystemV.
BaldrdashWindows
SpiderMonkey WebAssembly convention on Windows.
Baldrdash2020
SpiderMonkey WebAssembly convention for “ABI-2020”, with extra TLS register slots in the frame.
Probestack
Specialized convention for the probestack function.
WasmtimeSystemV
Wasmtime equivalent of SystemV, not ABI-stable.
Currently only differs in how multiple return values are handled, returning the first return value in a register and everything else through a return-pointer.
WasmtimeFastcall
Wasmtime equivalent of WindowsFastcall, not ABI-stable.
Differs from fastcall in the same way as WasmtimeSystemV
.
WasmtimeAppleAarch64
Wasmtime equivalent of AppleAarch64, not ABI-stable.
Differs from apple-aarch64 in the same way as WasmtimeSystemV
.
Implementations
Return the default calling convention for the given target triple.
Returns the calling convention used for libcalls according to the current flags.
Is the calling convention extending the Windows Fastcall ABI?
Is the calling convention extending the Apple aarch64 ABI?
Is the calling convention extending the Baldrdash ABI?
Is the calling convention extending the Wasmtime ABI?
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for CallConv
impl UnwindSafe for CallConv
Blanket Implementations
Mutably borrows from an owned value. Read more
Compare self to key
and return true
if they are equal.