diff options
Diffstat (limited to 'src/passes/Precompute.cpp')
-rw-r--r-- | src/passes/Precompute.cpp | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/src/passes/Precompute.cpp b/src/passes/Precompute.cpp index 9735b91d7..b6b7d5097 100644 --- a/src/passes/Precompute.cpp +++ b/src/passes/Precompute.cpp @@ -61,9 +61,6 @@ public: Flow visitCall(Call* curr) { return Flow(NOTPRECOMPUTABLE_FLOW); } - Flow visitCallImport(CallImport* curr) { - return Flow(NOTPRECOMPUTABLE_FLOW); - } Flow visitCallIndirect(CallIndirect* curr) { return Flow(NOTPRECOMPUTABLE_FLOW); } @@ -89,11 +86,9 @@ public: return Flow(NOTPRECOMPUTABLE_FLOW); } Flow visitGetGlobal(GetGlobal *curr) { - auto* global = module->getGlobalOrNull(curr->name); - if (global) { - if (!global->mutable_) { - return visit(global->init); - } + auto* global = module->getGlobal(curr->name); + if (!global->imported() && !global->mutable_) { + return visit(global->init); } return Flow(NOTPRECOMPUTABLE_FLOW); } |