Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
bytecodealliance
GitHub Repository: bytecodealliance/wasmtime
Path: blob/main/crates/cranelift/src/func_environ/stack_switching/mod.rs
1693 views
1
mod control_effect;
2
pub(crate) mod fatpointer;
3
pub(crate) mod instructions;
4
5
pub(crate) mod builtins {
6
macro_rules! define_builtin_accessors {
7
( $( $name:ident , )* ) => {
8
$(
9
#[inline]
10
pub fn $name(
11
func_env: &mut crate::func_environ::FuncEnvironment<'_>,
12
func: &mut crate::ir::Function,
13
) -> wasmtime_environ::WasmResult<crate::ir::FuncRef> {
14
#[cfg(feature = "stack-switching")]
15
{
16
return Ok(func_env.builtin_functions.$name(func));
17
}
18
19
#[cfg(not(feature = "stack-switching"))]
20
{
21
let _ = (func, func_env);
22
return Err(wasmtime_environ::wasm_unsupported!(
23
"support for Wasm Stack Switching disabled at compile time because the `stack-switching` cargo \
24
feature was not enabled"
25
));
26
}
27
}
28
)*
29
};
30
}
31
32
define_builtin_accessors! {
33
cont_new,
34
table_grow_cont_obj,
35
table_fill_cont_obj,
36
}
37
}
38
39