diff options
author | Alon Zakai <alonzakai@gmail.com> | 2016-07-13 12:15:20 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2016-07-13 16:07:59 -0700 |
commit | 9e2f21c9aa1993325b5a7043d206e2baf07e9180 (patch) | |
tree | 7fc213c0bde0d4da747d85ec791f08c7f083029a /src/tools/wasm-shell.cpp | |
parent | 9d3801039d2e2f9738d2c4829ee59aa047da1cc6 (diff) | |
download | binaryen-9e2f21c9aa1993325b5a7043d206e2baf07e9180.tar.gz binaryen-9e2f21c9aa1993325b5a7043d206e2baf07e9180.tar.bz2 binaryen-9e2f21c9aa1993325b5a7043d206e2baf07e9180.zip |
separate wasm-opt out from wasm-shell: opt optimizes, shell runs wast shell tests
Diffstat (limited to 'src/tools/wasm-shell.cpp')
-rw-r--r-- | src/tools/wasm-shell.cpp | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/src/tools/wasm-shell.cpp b/src/tools/wasm-shell.cpp index 27fa6cd50..72e8e13ba 100644 --- a/src/tools/wasm-shell.cpp +++ b/src/tools/wasm-shell.cpp @@ -169,44 +169,21 @@ static void run_asserts(size_t* i, bool* checked, Module* wasm, int main(int argc, const char* argv[]) { Name entry; - std::vector<std::string> passes; Options options("wasm-shell", "Execute .wast files"); options - .add("--output", "-o", "Output file (stdout if not specified)", - Options::Arguments::One, - [](Options* o, const std::string& argument) { - o->extra["output"] = argument; - Colors::disable(); - }) .add( "--entry", "-e", "call the entry point after parsing the module", Options::Arguments::One, [&entry](Options*, const std::string& argument) { entry = argument; }) - .add("", "-O", "execute default optimization passes", - Options::Arguments::Zero, - [&passes](Options*, const std::string&) { - passes.push_back("O"); - }) .add_positional("INFILE", Options::Arguments::One, [](Options* o, const std::string& argument) { o->extra["infile"] = argument; }); - for (const auto& p : PassRegistry::get()->getRegisteredNames()) { - options.add( - std::string("--") + p, "", PassRegistry::get()->getPassDescription(p), - Options::Arguments::Zero, - [&passes, p](Options*, const std::string&) { passes.push_back(p); }); - } options.parse(argc, argv); auto input(read_file<std::vector<char>>(options.extra["infile"], Flags::Text, options.debug ? Flags::Debug : Flags::Release)); - std::unique_ptr<Output> output; - if (options.extra.count("output") > 0) { - output = wasm::make_unique<Output>(options.extra["output"], Flags::Text, options.debug ? Flags::Debug : Flags::Release); - } - bool checked = false; try { @@ -226,29 +203,7 @@ int main(int argc, const char* argv[]) { builder = wasm::make_unique<SExpressionWasmBuilder>(wasm, *root[i]); i++; assert(WasmValidator().validate(wasm)); - - MixedArena moreModuleAllocations; - - if (passes.size() > 0) { - if (options.debug) std::cerr << "running passes...\n"; - PassRunner passRunner(&wasm); - if (options.debug) passRunner.setDebug(true); - for (auto& passName : passes) { - if (passName == "O") { - passRunner.addDefaultOptimizationPasses(); - } else { - passRunner.add(passName); - } - } - passRunner.run(); - assert(WasmValidator().validate(wasm)); - } - run_asserts(&i, &checked, &wasm, &root, &builder, entry); - - if (output) { - WasmPrinter::printModule(&wasm, output->getStream()); - } } else { run_asserts(&i, &checked, nullptr, &root, nullptr, entry); } |