Enum cranelift_codegen::isa::CallConv[][src]

pub enum CallConv {
    Fast,
    Cold,
    SystemV,
    WindowsFastcall,
    BaldrdashSystemV,
    BaldrdashWindows,
    Baldrdash2020,
    Probestack,
}

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

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

Implementations

impl CallConv[src]

pub fn triple_default(triple: &Triple) -> Self[src]

Return the default calling convention for the given target triple.

pub fn for_libcall(flags: &Flags, default_call_conv: CallConv) -> Self[src]

Returns the calling convention used for libcalls according to the current flags.

pub fn extends_windows_fastcall(self) -> bool[src]

Is the calling convention extending the Windows Fastcall ABI?

pub fn extends_baldrdash(self) -> bool[src]

Is the calling convention extending the Baldrdash ABI?

Trait Implementations

impl Clone for CallConv[src]

impl Copy for CallConv[src]

impl Debug for CallConv[src]

impl<'de> Deserialize<'de> for CallConv[src]

impl Display for CallConv[src]

impl Eq for CallConv[src]

impl FromStr for CallConv[src]

type Err = ()

The associated error which can be returned from parsing.

impl Hash for CallConv[src]

impl PartialEq<CallConv> for CallConv[src]

impl Serialize for CallConv[src]

impl StructuralEq for CallConv[src]

impl StructuralPartialEq for CallConv[src]

Auto Trait Implementations

impl RefUnwindSafe for CallConv

impl Send for CallConv

impl Sync for CallConv

impl Unpin for CallConv

impl UnwindSafe for CallConv

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> CallHasher for T where
    T: Hash
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?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.