diff options
author | Alon Zakai <azakai@google.com> | 2021-04-15 14:35:42 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-15 14:35:42 -0700 |
commit | dc041817642994d5d19c7f21bca734369564e842 (patch) | |
tree | 78a84fb61927ec177dc4d95808d33c09156bde7b /scripts/fuzz_opt.py | |
parent | ac55046821442b2f9140a106dde1436682dea8c4 (diff) | |
download | binaryen-dc041817642994d5d19c7f21bca734369564e842.tar.gz binaryen-dc041817642994d5d19c7f21bca734369564e842.tar.bz2 binaryen-dc041817642994d5d19c7f21bca734369564e842.zip |
Fuzzer: Do not fuzz multivalue testcases in initial contents (#3809)
There is a conflict between multivalue and GC, see the details in the
comment. There isn't a good way to get the fuzzer to avoid the combination
of them, and GC is more urgent, so disable multivalue in that area for now.
(This does not disable all multivalue fuzzing - the fuzzer can still emit stuff.
This just disables initial content from test suite having multivalue, which
is enough for now, until the fuzzer can emit more GC things, and then we'll
need to do more.)
Diffstat (limited to 'scripts/fuzz_opt.py')
-rwxr-xr-x | scripts/fuzz_opt.py | 21 |
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', |