diff options
author | Alon Zakai <azakai@google.com> | 2019-06-07 11:31:35 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-07 11:31:35 -0700 |
commit | 284c9357d84165b51e04fa939debddeedbf2eb99 (patch) | |
tree | 8ed2a7d1c751b770a7904c45b996af0ddba256bb /src | |
parent | cac94c5aece24855c2d8cdc73e75f7f5abb29cd2 (diff) | |
download | binaryen-284c9357d84165b51e04fa939debddeedbf2eb99.tar.gz binaryen-284c9357d84165b51e04fa939debddeedbf2eb99.tar.bz2 binaryen-284c9357d84165b51e04fa939debddeedbf2eb99.zip |
Refactor -g param parsing (#2167)
Use one shared location in optimization-options as much as possible.
This also allows tools like wasm2js to receive that flag.
Diffstat (limited to 'src')
-rw-r--r-- | src/tools/asm2wasm.cpp | 7 | ||||
-rw-r--r-- | src/tools/optimization-options.h | 7 | ||||
-rw-r--r-- | src/tools/wasm-opt.cpp | 10 |
3 files changed, 9 insertions, 15 deletions
diff --git a/src/tools/asm2wasm.cpp b/src/tools/asm2wasm.cpp index cbd72abe0..083f3386b 100644 --- a/src/tools/asm2wasm.cpp +++ b/src/tools/asm2wasm.cpp @@ -140,13 +140,6 @@ int main(int argc, const char* argv[]) { [&legalizeJavaScriptFFI](Options* o, const std::string&) { legalizeJavaScriptFFI = false; }) - .add("--debuginfo", - "-g", - "Emit names section in wasm binary (or full debuginfo in wast)", - Options::Arguments::Zero, - [&](Options* o, const std::string& arguments) { - options.passOptions.debugInfo = true; - }) .add("--source-map", "-sm", "Emit source map (if using binary output) to the specified file", diff --git a/src/tools/optimization-options.h b/src/tools/optimization-options.h index 7f769463c..a07e585bd 100644 --- a/src/tools/optimization-options.h +++ b/src/tools/optimization-options.h @@ -123,6 +123,13 @@ struct OptimizationOptions : public ToolOptions { [this](Options* o, const std::string& argument) { passOptions.shrinkLevel = atoi(argument.c_str()); }) + .add("--debuginfo", + "-g", + "Emit names section in wasm binary (or full debuginfo in wast)", + Options::Arguments::Zero, + [&](Options* o, const std::string& arguments) { + passOptions.debugInfo = true; + }) .add("--always-inline-max-function-size", "-aimfs", "Max size of functions that are always inlined (default " + diff --git a/src/tools/wasm-opt.cpp b/src/tools/wasm-opt.cpp index d692d598a..130e284c2 100644 --- a/src/tools/wasm-opt.cpp +++ b/src/tools/wasm-opt.cpp @@ -63,7 +63,6 @@ std::string runCommand(std::string command) { int main(int argc, const char* argv[]) { Name entry; bool emitBinary = true; - bool debugInfo = false; bool converge = false; bool fuzzExecBefore = false; bool fuzzExecAfter = false; @@ -95,11 +94,6 @@ int main(int argc, const char* argv[]) { "Emit text instead of binary for the output file", Options::Arguments::Zero, [&](Options* o, const std::string& argument) { emitBinary = false; }) - .add("--debuginfo", - "-g", - "Emit names section and debug info", - Options::Arguments::Zero, - [&](Options* o, const std::string& arguments) { debugInfo = true; }) .add("--converge", "-c", "Run passes to convergence, continuing while binary size decreases", @@ -295,7 +289,7 @@ int main(int argc, const char* argv[]) { ModuleWriter writer; writer.setDebug(options.debug); writer.setBinary(emitBinary); - writer.setDebugInfo(debugInfo); + writer.setDebugInfo(options.passOptions.debugInfo); writer.write(wasm, options.extra["output"]); firstOutput = runCommand(extraFuzzCommand); std::cout << "[extra-fuzz-command first output:]\n" << firstOutput << '\n'; @@ -377,7 +371,7 @@ int main(int argc, const char* argv[]) { ModuleWriter writer; writer.setDebug(options.debug); writer.setBinary(emitBinary); - writer.setDebugInfo(debugInfo); + writer.setDebugInfo(options.passOptions.debugInfo); if (outputSourceMapFilename.size()) { writer.setSourceMapFilename(outputSourceMapFilename); writer.setSourceMapUrl(outputSourceMapUrl); |