Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 3 additions & 8 deletions src/tools/fuzzing/fuzzing.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5265,15 +5265,10 @@ Expression* TranslateToFuzzReader::makeAtomic(Type type) {
auto* ptr = makePointer();
if (oneIn(2)) {
auto* value = make(type);
auto op = pick(RMWAdd, RMWSub, RMWAnd, RMWOr, RMWXor, RMWXchg);
auto order = pick(atomicMemoryOrders);
return builder.makeAtomicRMW(
pick(RMWAdd, RMWSub, RMWAnd, RMWOr, RMWXor, RMWXchg),
bytes,
offset,
ptr,
value,
type,
wasm.memories[0]->name,
pick(atomicMemoryOrders));
op, bytes, offset, ptr, value, type, wasm.memories[0]->name, order);
} else {
auto* expected = make(type);
auto* replacement = make(type);
Expand Down
138 changes: 87 additions & 51 deletions test/passes/translate-to-fuzz_all-features_metrics_noprint.txt
Original file line number Diff line number Diff line change
@@ -1,56 +1,92 @@
Metrics
total
[exports] : 9
[funcs] : 5
[globals] : 2
[imports] : 12
[exports] : 124
[funcs] : 223
[globals] : 13
[imports] : 13
[memories] : 1
[memory-data] : 16
[table-data] : 3
[memory-data] : 31
[table-data] : 40
[tables] : 2
[tags] : 2
[total] : 717
[vars] : 24
ArrayNew : 4
ArrayNewFixed : 9
AtomicFence : 2
AtomicNotify : 2
Binary : 40
Block : 114
BrOn : 3
Break : 24
Call : 15
CallRef : 3
Const : 122
Drop : 8
GlobalGet : 40
GlobalSet : 36
I31Get : 1
If : 34
Load : 7
LocalGet : 27
LocalSet : 36
Loop : 13
Nop : 19
Pop : 6
RefAs : 3
RefEq : 3
RefFunc : 10
RefI31 : 5
RefIsNull : 1
RefNull : 3
Return : 2
SIMDExtract : 5
Select : 3
Store : 4
StringConst : 15
StringEncode : 5
StringEq : 2
StringMeasure : 1
StructNew : 8
Try : 7
TryTable : 6
TupleExtract : 3
TupleMake : 7
Unary : 40
Unreachable : 19
[total] : 78541
[vars] : 4770
ArrayCmpxchg : 45
ArrayCopy : 41
ArrayFill : 38
ArrayGet : 391
ArrayLen : 602
ArrayNew : 1109
ArrayNewFixed : 415
ArrayRMW : 55
ArraySet : 82
AtomicCmpxchg : 37
AtomicFence : 74
AtomicNotify : 45
AtomicRMW : 63
Binary : 3946
Block : 7421
BrOn : 319
Break : 1166
Call : 1109
CallIndirect : 187
CallRef : 274
Const : 11911
ContBind : 1
ContNew : 29
DataDrop : 15
Drop : 598
GlobalGet : 4167
GlobalSet : 2340
I31Get : 67
If : 2686
Load : 364
LocalGet : 6969
LocalSet : 4277
Loop : 942
MemoryCopy : 16
MemoryFill : 9
MemoryInit : 14
Nop : 805
Pop : 323
RefAs : 4383
RefCast : 197
RefEq : 358
RefFunc : 1205
RefGetDesc : 59
RefI31 : 667
RefIsNull : 78
RefNull : 5442
RefTest : 78
Return : 363
SIMDExtract : 159
SIMDLoad : 2
SIMDReplace : 1
SIMDShift : 2
SIMDShuffle : 1
SIMDTernary : 1
Select : 348
Store : 185
StringConcat : 1
StringConst : 432
StringEncode : 59
StringEq : 60
StringMeasure : 77
StringNew : 8
StringWTF16Get : 98
StructCmpxchg : 50
StructGet : 560
StructNew : 5387
StructRMW : 55
StructSet : 79
Switch : 6
TableGet : 1
TableSet : 79
Throw : 114
ThrowRef : 8
Try : 426
TryTable : 532
TupleExtract : 253
TupleMake : 294
Unary : 2283
Unreachable : 1198
Binary file modified test/passes/translate-to-fuzz_all-features_metrics_noprint.wast
Binary file not shown.
Loading