diff options
Diffstat (limited to 'src/passes/RemoveUnusedModuleElements.cpp')
-rw-r--r-- | src/passes/RemoveUnusedModuleElements.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/passes/RemoveUnusedModuleElements.cpp b/src/passes/RemoveUnusedModuleElements.cpp index 943448cfa..228b3afc1 100644 --- a/src/passes/RemoveUnusedModuleElements.cpp +++ b/src/passes/RemoveUnusedModuleElements.cpp @@ -218,6 +218,17 @@ struct ReferenceFinder : public PostWalker<ReferenceFinder> { } WASM_UNREACHABLE("unexpected op"); } + void visitArrayInit(ArrayInit* curr) { + switch (curr->op) { + case InitData: + note({ModuleElementKind::DataSegment, curr->segment}); + return; + case InitElem: + note({ModuleElementKind::ElementSegment, curr->segment}); + return; + } + WASM_UNREACHABLE("unexpected op"); + } }; // Analyze a module to find what things are referenced and what things are used. |