diff options
Diffstat (limited to 'src/passes/RemoveNonJSOps.cpp')
-rw-r--r-- | src/passes/RemoveNonJSOps.cpp | 9 |
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; |