summaryrefslogtreecommitdiff
path: root/src/passes/StackCheck.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/passes/StackCheck.cpp')
-rw-r--r--src/passes/StackCheck.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/passes/StackCheck.cpp b/src/passes/StackCheck.cpp
index 4b1054597..fd7ed6c0f 100644
--- a/src/passes/StackCheck.cpp
+++ b/src/passes/StackCheck.cpp
@@ -146,15 +146,17 @@ struct StackCheck : public Pass {
Builder builder(*module);
// Add the globals.
+ Type indexType =
+ module->memories.empty() ? Type::i32 : module->memories[0]->indexType;
auto stackBase =
module->addGlobal(builder.makeGlobal(stackBaseName,
stackPointer->type,
- builder.makeConstPtr(0),
+ builder.makeConstPtr(0, indexType),
Builder::Mutable));
auto stackLimit =
module->addGlobal(builder.makeGlobal(stackLimitName,
stackPointer->type,
- builder.makeConstPtr(0),
+ builder.makeConstPtr(0, indexType),
Builder::Mutable));
// Instrument all the code.