diff options
author | Heejin Ahn <aheejin@gmail.com> | 2022-01-04 12:39:38 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-04 12:39:38 -0800 |
commit | 16ac2eb73a57eb530f78b632cffacac97c6b8fdd (patch) | |
tree | 81e0945bbb828b880f8292647c21318c600b783c /test | |
parent | 28665b1d8f0632216ceb2de475560c64dc260b9d (diff) | |
download | binaryen-16ac2eb73a57eb530f78b632cffacac97c6b8fdd.tar.gz binaryen-16ac2eb73a57eb530f78b632cffacac97c6b8fdd.tar.bz2 binaryen-16ac2eb73a57eb530f78b632cffacac97c6b8fdd.zip |
[EH] Enable fuzzer with initial contents (#4409)
This enables fuzzing EH with initial contents. fuzzing.cpp/h does not
yet support generation of EH instructions, but with this we can still
fuzz EH based on initial contents.
The fuzzer ran successfully for more than 1,900,000 iterations, with my
local modification that always enables EH and lets the fuzzer select
only EH tests for its initial contents.
Diffstat (limited to 'test')
-rw-r--r-- | test/passes/fuzz_metrics_noprint.bin.txt | 51 | ||||
-rw-r--r-- | test/passes/translate-to-fuzz_all-features_metrics_noprint.txt | 70 |
2 files changed, 63 insertions, 58 deletions
diff --git a/test/passes/fuzz_metrics_noprint.bin.txt b/test/passes/fuzz_metrics_noprint.bin.txt index d65d67831..4c481cd8f 100644 --- a/test/passes/fuzz_metrics_noprint.bin.txt +++ b/test/passes/fuzz_metrics_noprint.bin.txt @@ -1,31 +1,32 @@ total - [exports] : 38 - [funcs] : 62 + [exports] : 39 + [funcs] : 50 [globals] : 7 [imports] : 4 [memory-data] : 4 - [table-data] : 22 + [table-data] : 17 [tables] : 1 [tags] : 0 - [total] : 7561 - [vars] : 214 - Binary : 542 - Block : 1140 - Break : 287 - Call : 236 - CallIndirect : 94 - Const : 1510 - Drop : 66 - GlobalGet : 625 - GlobalSet : 266 - If : 487 - Load : 128 - LocalGet : 477 - LocalSet : 264 - Loop : 182 - Nop : 223 - RefFunc : 22 - Return : 301 - Select : 58 - Store : 91 - Unary : 562 + [total] : 3442 + [vars] : 108 + Binary : 299 + Block : 495 + Break : 110 + Call : 193 + CallIndirect : 29 + Const : 650 + Drop : 48 + GlobalGet : 295 + GlobalSet : 131 + If : 183 + Load : 79 + LocalGet : 199 + LocalSet : 153 + Loop : 71 + Nop : 45 + RefFunc : 17 + Return : 155 + Select : 25 + Store : 29 + Unary : 235 + Unreachable : 1 diff --git a/test/passes/translate-to-fuzz_all-features_metrics_noprint.txt b/test/passes/translate-to-fuzz_all-features_metrics_noprint.txt index 853206211..a172095ef 100644 --- a/test/passes/translate-to-fuzz_all-features_metrics_noprint.txt +++ b/test/passes/translate-to-fuzz_all-features_metrics_noprint.txt @@ -1,42 +1,46 @@ total - [exports] : 8 - [funcs] : 9 + [exports] : 13 + [funcs] : 18 [globals] : 6 [imports] : 5 [memory-data] : 22 - [table-data] : 4 + [table-data] : 14 [tables] : 1 [tags] : 1 - [total] : 465 - [vars] : 10 - ArrayInit : 1 - AtomicCmpxchg : 1 + [total] : 728 + [vars] : 41 + ArrayInit : 6 + AtomicFence : 1 AtomicNotify : 1 - Binary : 64 - Block : 51 - Break : 6 - Call : 19 - Const : 121 - DataDrop : 1 - Drop : 6 - GlobalGet : 22 - GlobalSet : 12 - If : 20 - Load : 13 - LocalGet : 22 - LocalSet : 18 - Loop : 3 + AtomicRMW : 1 + Binary : 80 + Block : 83 + Break : 13 + Call : 33 + CallIndirect : 1 + CallRef : 1 + Const : 162 + Drop : 10 + GlobalGet : 50 + GlobalSet : 27 + I31Get : 3 + I31New : 5 + If : 32 + Load : 20 + LocalGet : 35 + LocalSet : 21 + Loop : 8 MemoryFill : 1 - Nop : 20 + MemoryInit : 1 + Nop : 14 RefAs : 1 - RefFunc : 5 - RefIs : 3 - RefNull : 3 - Return : 18 - SIMDExtract : 3 - Select : 1 - Store : 3 - StructNew : 3 - TupleExtract : 2 - TupleMake : 4 - Unary : 17 + RefFunc : 16 + RefIs : 2 + RefNull : 6 + Return : 27 + SIMDExtract : 1 + Select : 8 + Store : 2 + StructNew : 7 + TupleMake : 5 + Unary : 44 |