summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/passes/RemoveNonJSOps.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/passes/RemoveNonJSOps.cpp b/src/passes/RemoveNonJSOps.cpp
index a526b1eaf..dc8aecfe0 100644
--- a/src/passes/RemoveNonJSOps.cpp
+++ b/src/passes/RemoveNonJSOps.cpp
@@ -42,6 +42,7 @@
#include "ir/literal-utils.h"
#include "ir/memory-utils.h"
#include "ir/module-utils.h"
+#include "parser/wat-parser.h"
#include "passes/intrinsics-module.h"
#include "support/insert_ordered.h"
#include "wasm-builder.h"
@@ -79,11 +80,9 @@ struct RemoveNonJSOpsPass : public WalkerPass<PostWalker<RemoveNonJSOpsPass>> {
//
// TODO: only do this once per invocation of wasm2asm
Module intrinsicsModule;
- std::string input(IntrinsicsModuleWast);
- SExpressionParser parser(const_cast<char*>(input.c_str()));
- Element& root = *parser.root;
- SExpressionWasmBuilder builder(
- intrinsicsModule, *root[0], IRProfile::Normal);
+ [[maybe_unused]] auto parsed =
+ WATParser::parseModule(intrinsicsModule, IntrinsicsModuleWast);
+ assert(!parsed.getErr());
std::set<Name> neededFunctions;