Enum wasmtime_environ::isa::CallConv
source · [−]pub enum CallConv {
Fast,
Cold,
SystemV,
WindowsFastcall,
BaldrdashSystemV,
BaldrdashWindows,
Baldrdash2020,
Probestack,
}
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
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
sourceimpl CallConv
impl CallConv
sourcepub fn triple_default(triple: &Triple) -> CallConv
pub fn triple_default(triple: &Triple) -> CallConv
Return the default calling convention for the given target triple.
sourcepub fn for_libcall(flags: &Flags, default_call_conv: CallConv) -> CallConv
pub fn for_libcall(flags: &Flags, default_call_conv: CallConv) -> CallConv
Returns the calling convention used for libcalls according to the current flags.
sourcepub fn extends_windows_fastcall(self) -> bool
pub fn extends_windows_fastcall(self) -> bool
Is the calling convention extending the Windows Fastcall ABI?
sourcepub fn extends_baldrdash(self) -> bool
pub fn extends_baldrdash(self) -> bool
Is the calling convention extending the Baldrdash ABI?
Trait Implementations
sourceimpl<'de> Deserialize<'de> for CallConv
impl<'de> Deserialize<'de> for CallConv
sourcepub fn deserialize<__D>(
__deserializer: __D
) -> Result<CallConv, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
pub fn deserialize<__D>(
__deserializer: __D
) -> Result<CallConv, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl Serialize for CallConv
impl Serialize for CallConv
sourcepub fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
pub fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Copy for CallConv
impl Eq for CallConv
impl StructuralEq for CallConv
impl StructuralPartialEq for CallConv
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
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> CallHasher for T where
T: Hash + ?Sized,
impl<T> CallHasher for T where
T: Hash + ?Sized,
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcepub fn equivalent(&self, key: &K) -> bool
pub fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more