summaryrefslogtreecommitdiff
path: root/src/passes/DeadCodeElimination.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/passes/DeadCodeElimination.cpp')
-rw-r--r--src/passes/DeadCodeElimination.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/passes/DeadCodeElimination.cpp b/src/passes/DeadCodeElimination.cpp
index 9e2e194cb..4215de3f8 100644
--- a/src/passes/DeadCodeElimination.cpp
+++ b/src/passes/DeadCodeElimination.cpp
@@ -315,8 +315,10 @@ struct DeadCodeElimination
DELEGATE(Drop);
case Expression::Id::ReturnId:
DELEGATE(Return);
- case Expression::Id::HostId:
- DELEGATE(Host);
+ case Expression::Id::MemorySizeId:
+ DELEGATE(MemorySize);
+ case Expression::Id::MemoryGrowId:
+ DELEGATE(MemoryGrow);
case Expression::Id::NopId:
DELEGATE(Nop);
case Expression::Id::UnreachableId:
@@ -519,7 +521,11 @@ struct DeadCodeElimination
blockifyReachableOperands({curr->value}, curr->type);
}
- void visitHost(Host* curr) { handleCall(curr); }
+ void visitMemorySize(MemorySize* curr) {}
+
+ void visitMemoryGrow(MemoryGrow* curr) {
+ blockifyReachableOperands({curr->delta}, curr->type);
+ }
void visitFunction(Function* curr) { assert(reachableBreaks.size() == 0); }
};