summaryrefslogtreecommitdiff
path: root/src/passes/OptimizeInstructions.cpp
diff options
context:
space:
mode:
authorThomas Lively <7121787+tlively@users.noreply.github.com>2021-11-15 17:23:17 -0800
committerGitHub <noreply@github.com>2021-11-15 17:23:17 -0800
commit4b3d5be999baac642e7664da39c37c6012c11513 (patch)
treee690bb8bf72a994913ff672f06a793944f867299 /src/passes/OptimizeInstructions.cpp
parent5d398d5c9305272b971322d728c4628b38c5669c (diff)
downloadbinaryen-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