summaryrefslogtreecommitdiff
path: root/src/tools/wasm-opt.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/wasm-opt.cpp')
-rw-r--r--src/tools/wasm-opt.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/tools/wasm-opt.cpp b/src/tools/wasm-opt.cpp
index d2f3d718c..ca4d87dd8 100644
--- a/src/tools/wasm-opt.cpp
+++ b/src/tools/wasm-opt.cpp
@@ -72,6 +72,7 @@ int main(int argc, const char* argv[]) {
bool translateToFuzz = false;
bool fuzzPasses = false;
bool fuzzNaNs = true;
+ bool fuzzMemory = true;
std::string emitJSWrapper;
std::string emitSpecWrapper;
std::string inputSourceMapFilename;
@@ -116,6 +117,9 @@ int main(int argc, const char* argv[]) {
.add("--no-fuzz-nans", "", "don't emit NaNs when fuzzing, and remove them at runtime as well (helps avoid nondeterminism between VMs)",
Options::Arguments::Zero,
[&](Options *o, const std::string& arguments) { fuzzNaNs = false; })
+ .add("--no-fuzz-memory", "", "don't emit memory ops when fuzzing",
+ Options::Arguments::Zero,
+ [&](Options *o, const std::string& arguments) { fuzzMemory = false; })
.add("--emit-js-wrapper", "-ejw", "Emit a JavaScript wrapper file that can run the wasm with some test values, useful for fuzzing",
Options::Arguments::One,
[&](Options *o, const std::string& arguments) { emitJSWrapper = arguments; })
@@ -172,6 +176,7 @@ int main(int argc, const char* argv[]) {
}
reader.setFeatures(options.getFeatures());
reader.setAllowNaNs(fuzzNaNs);
+ reader.setAllowMemory(fuzzMemory);
reader.build();
if (options.passOptions.validate) {
if (!WasmValidator().validate(wasm, options.getFeatures())) {