Skip to content

Commit fbc60b3

Browse files
Gumichocopengin8Constellation
authored andcommitted
[JSC] Add Set microbenchmarks
https://bugs.webkit.org/show_bug.cgi?id=290290 Reviewed by Yusuke Suzuki. Add more microbenchmarks of `Set` * JSTests/microbenchmarks/set-difference.js: Added. * JSTests/microbenchmarks/set-has.js: Added. * JSTests/microbenchmarks/set-intersection.js: Added. * JSTests/microbenchmarks/set-isDisjointFrom.js: Added. * JSTests/microbenchmarks/set-isSubsetOf.js: Added. * JSTests/microbenchmarks/set-isSupersetOf.js: Added. * JSTests/microbenchmarks/set-symmetricDifference.js: Added. * JSTests/microbenchmarks/set-union.js: Added. Canonical link: https://commits.webkit.org/292573@main
1 parent 7d6c85e commit fbc60b3

8 files changed

Lines changed: 93 additions & 0 deletions

File tree

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
var set1 = new Set();
2+
var set2 = new Set();
3+
4+
for (var i = 0; i < 50; i++) {
5+
set1.add(i);
6+
set2.add(i * 2);
7+
}
8+
9+
for (var i = 0; i < testLoopCount; i++) {
10+
set1.difference(set2);
11+
set2.difference(set1);
12+
}

JSTests/microbenchmarks/set-has.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
var set = new Set();
2+
3+
for (var i = 0; i < testLoopCount; i++) {
4+
set.add(i);
5+
set.has(i);
6+
set.has(i * 2);
7+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
var set1 = new Set();
2+
var set2 = new Set();
3+
4+
for (var i = 0; i < 50; i++) {
5+
set1.add(i);
6+
set2.add(i * 2);
7+
}
8+
9+
for (var i = 0; i < testLoopCount; i++) {
10+
set1.intersection(set2);
11+
set2.intersection(set1);
12+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
var set1 = new Set();
2+
var set2 = new Set();
3+
4+
for (var i = 0; i < 50; i++) {
5+
set1.add(i);
6+
set2.add((i + 1) * 100);
7+
}
8+
9+
for (var i = 0; i < testLoopCount; i++) {
10+
set1.isDisjointFrom(set2);
11+
set2.isDisjointFrom(set1);
12+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
var set1 = new Set();
2+
var set2 = new Set();
3+
4+
for (var i = 0; i < 50; i++) {
5+
set1.add(i);
6+
set2.add(i);
7+
set2.add(i + 1);
8+
}
9+
10+
for (var i = 0; i < testLoopCount; i++) {
11+
set1.isSubsetOf(set2);
12+
set2.isSubsetOf(set1);
13+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
var set1 = new Set();
2+
var set2 = new Set();
3+
4+
for (var i = 0; i < 50; i++) {
5+
set1.add(i);
6+
set2.add(i);
7+
set2.add(i + 1);
8+
}
9+
10+
for (var i = 0; i < testLoopCount; i++) {
11+
set1.isSupersetOf(set2);
12+
set2.isSupersetOf(set1);
13+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
var set1 = new Set();
2+
var set2 = new Set();
3+
4+
for (var i = 0; i < 50; i++) {
5+
set1.add(i);
6+
set2.add(i * 2);
7+
}
8+
9+
for (var i = 0; i < testLoopCount; i++) {
10+
set1.symmetricDifference(set2);
11+
set2.symmetricDifference(set1);
12+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
var set1 = new Set();
2+
var set2 = new Set();
3+
4+
for (var i = 0; i < 50; i++) {
5+
set1.add(i);
6+
set2.add(i * 2);
7+
}
8+
9+
for (var i = 0; i < testLoopCount; i++) {
10+
set1.union(set2);
11+
set2.union(set1);
12+
}

0 commit comments

Comments
 (0)