summaryrefslogtreecommitdiff
path: root/scripts/fuzz_opt.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/fuzz_opt.py')
-rwxr-xr-xscripts/fuzz_opt.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/scripts/fuzz_opt.py b/scripts/fuzz_opt.py
index 30b0b52fa..7580a59a0 100755
--- a/scripts/fuzz_opt.py
+++ b/scripts/fuzz_opt.py
@@ -212,6 +212,27 @@ def pick_initial_contents():
'--disable-exception-handling',
# has not been fuzzed in general yet
'--disable-memory64',
+ # avoid multivalue for now due to bad interactions with gc rtts in
+ # stacky code. for example, this fails to roundtrip as the tuple code
+ # ends up creating stacky binary code that needs to spill rtts to locals,
+ # which is not allowed:
+ #
+ # (module
+ # (type $other (struct))
+ # (func $foo (result (rtt $other))
+ # (select
+ # (rtt.canon $other)
+ # (rtt.canon $other)
+ # (tuple.extract 1
+ # (tuple.make
+ # (i32.const 0)
+ # (i32.const 0)
+ # )
+ # )
+ # )
+ # )
+ # )
+ '--disable-multivalue',
# DWARF is incompatible with multivalue atm; it's more important to
# fuzz multivalue since we aren't actually fuzzing DWARF here
'--strip-dwarf',