diff options
Diffstat (limited to 'src/tools/optimization-options.h')
-rw-r--r-- | src/tools/optimization-options.h | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/tools/optimization-options.h b/src/tools/optimization-options.h index abe3bcd6d..7849be375 100644 --- a/src/tools/optimization-options.h +++ b/src/tools/optimization-options.h @@ -14,7 +14,7 @@ * limitations under the License. */ -#include "support/command-line.h" +#include "feature-options.h" // // Shared optimization options for commandline tools @@ -22,14 +22,12 @@ namespace wasm { -struct OptimizationOptions : public Options { +struct OptimizationOptions : public FeatureOptions { static constexpr const char* DEFAULT_OPT_PASSES = "O"; std::vector<std::string> passes; - PassOptions passOptions; - FeatureSet features = Feature::Atomics; - OptimizationOptions(const std::string& command, const std::string& description) : Options(command, description) { + OptimizationOptions(const std::string& command, const std::string& description) : FeatureOptions(command, description) { (*this).add("", "-O", "execute default optimization passes", Options::Arguments::Zero, [this](Options*, const std::string&) { @@ -132,7 +130,7 @@ struct OptimizationOptions : public Options { void runPasses(Module& wasm) { PassRunner passRunner(&wasm, passOptions); if (debug) passRunner.setDebug(true); - passRunner.setFeatures(features); + passRunner.setFeatures(passOptions.features); for (auto& pass : passes) { if (pass == DEFAULT_OPT_PASSES) { passRunner.addDefaultOptimizationPasses(); |