diff options
author | Thomas Lively <7121787+tlively@users.noreply.github.com> | 2021-11-15 17:23:17 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-15 17:23:17 -0800 |
commit | 4b3d5be999baac642e7664da39c37c6012c11513 (patch) | |
tree | e690bb8bf72a994913ff672f06a793944f867299 /src/passes/OptimizeInstructions.cpp | |
parent | 5d398d5c9305272b971322d728c4628b38c5669c (diff) | |
download | binaryen-4b3d5be999baac642e7664da39c37c6012c11513.tar.gz binaryen-4b3d5be999baac642e7664da39c37c6012c11513.tar.bz2 binaryen-4b3d5be999baac642e7664da39c37c6012c11513.zip |
Add a fuzzer specifically for types (#4328)
Add a new fuzzer binary that repeatedly generates random types to find bugs in
the type system implementation. Each iteration creates some number of root types
followed by some number of subtypes thereof. Each built type can contain
arbitrary references to other built types, regardless of their order of
construction.
Right now the fuzzer only finds fatal errors in type building (and in its own
implementation), but it is meant to be extended to check other properties in the
future, such as that LUB calculations work as expected.
The logic for creating types is also intended to be integrated into the main
fuzzer in a follow-on PR so that the main fuzzer can fuzz with arbitrarily more
interesting GC types.
Diffstat (limited to 'src/passes/OptimizeInstructions.cpp')
0 files changed, 0 insertions, 0 deletions