summaryrefslogtreecommitdiff
path: root/ops/fast_call.rs
diff options
context:
space:
mode:
Diffstat (limited to 'ops/fast_call.rs')
-rw-r--r--ops/fast_call.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/ops/fast_call.rs b/ops/fast_call.rs
index 07bf87026..f2ed8cb2d 100644
--- a/ops/fast_call.rs
+++ b/ops/fast_call.rs
@@ -139,6 +139,7 @@ pub(crate) fn generate(
// Apply *hard* optimizer hints.
if optimizer.has_fast_callback_option
+ || optimizer.has_wasm_memory
|| optimizer.needs_opstate()
|| optimizer.is_async
|| optimizer.needs_fast_callback_option
@@ -147,7 +148,7 @@ pub(crate) fn generate(
fast_api_callback_options: *mut #core::v8::fast_api::FastApiCallbackOptions
};
- if optimizer.has_fast_callback_option {
+ if optimizer.has_fast_callback_option || optimizer.has_wasm_memory {
// Replace last parameter.
assert!(fast_fn_inputs.pop().is_some());
fast_fn_inputs.push(decl);
@@ -174,6 +175,7 @@ pub(crate) fn generate(
if optimizer.needs_opstate()
|| optimizer.is_async
|| optimizer.has_fast_callback_option
+ || optimizer.has_wasm_memory
{
// Dark arts 🪄 ✨
//