summaryrefslogtreecommitdiff
path: root/src/passes/RemoveUnusedModuleElements.cpp
diff options
context:
space:
mode:
authorDaniel Wirtz <dcode@dcode.io>2020-09-17 12:58:21 +0200
committerGitHub <noreply@github.com>2020-09-17 12:58:21 +0200
commit2841eddaabc7a5e24517e043a1aab8adc6d5c1e4 (patch)
tree17f8ed3d71237c4860fc07f7ba9bdc4d9691b76b /src/passes/RemoveUnusedModuleElements.cpp
parente1d74ef2acdd88f06b9e58f91f30bb56b9a26fe8 (diff)
downloadbinaryen-2841eddaabc7a5e24517e043a1aab8adc6d5c1e4.tar.gz
binaryen-2841eddaabc7a5e24517e043a1aab8adc6d5c1e4.tar.bz2
binaryen-2841eddaabc7a5e24517e043a1aab8adc6d5c1e4.zip
Refactor Host expression to MemorySize and MemoryGrow (#3137)
Aligns the internal representations of `memory.size` and `memory.grow` with other more recent memory instructions by removing the legacy `Host` expression class and adding separate expression classes for `MemorySize` and `MemoryGrow`. Simplifies related APIs, but is also a breaking API change.
Diffstat (limited to 'src/passes/RemoveUnusedModuleElements.cpp')
-rw-r--r--src/passes/RemoveUnusedModuleElements.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/passes/RemoveUnusedModuleElements.cpp b/src/passes/RemoveUnusedModuleElements.cpp
index 21cbc5e5b..3795022c2 100644
--- a/src/passes/RemoveUnusedModuleElements.cpp
+++ b/src/passes/RemoveUnusedModuleElements.cpp
@@ -111,11 +111,8 @@ struct ReachabilityAnalyzer : public PostWalker<ReachabilityAnalyzer> {
void visitDataDrop(DataDrop* curr) { usesMemory = true; }
void visitMemoryCopy(MemoryCopy* curr) { usesMemory = true; }
void visitMemoryFill(MemoryFill* curr) { usesMemory = true; }
- void visitHost(Host* curr) {
- if (curr->op == MemorySize || curr->op == MemoryGrow) {
- usesMemory = true;
- }
- }
+ void visitMemorySize(MemorySize* curr) { usesMemory = true; }
+ void visitMemoryGrow(MemoryGrow* curr) { usesMemory = true; }
void visitRefFunc(RefFunc* curr) {
if (reachable.count(
ModuleElement(ModuleElementKind::Function, curr->func)) == 0) {