summaryrefslogtreecommitdiff
path: root/deps/v8/test/js-perf-test/ForLoops/for_loop.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/test/js-perf-test/ForLoops/for_loop.js')
-rw-r--r--deps/v8/test/js-perf-test/ForLoops/for_loop.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/deps/v8/test/js-perf-test/ForLoops/for_loop.js b/deps/v8/test/js-perf-test/ForLoops/for_loop.js
new file mode 100644
index 0000000000..a7324b0c10
--- /dev/null
+++ b/deps/v8/test/js-perf-test/ForLoops/for_loop.js
@@ -0,0 +1,42 @@
+// Copyright 2017 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+new BenchmarkSuite('Let-Standard', [1000], [
+ new Benchmark('Let-Standard', false, false, 0, LetLoop),
+]);
+
+new BenchmarkSuite('Var-Standard', [1000], [
+ new Benchmark('Var-Standard', false, false, 0, VarLoop),
+]);
+
+var x = [-1, 1, 4];
+var y = [-11, -1, 1, 2, 3, 4, 5, 6, 20, 44, 87, 99, 100];
+
+function LetLoop() {
+ "use strict";
+ const ret = [];
+ for (let i = 0; i < x.length; i++) {
+ for (let z = 0; z < y.length; z++) {
+ if (x[i] == y[z]) {
+ ret.push(x[i]);
+ break;
+ }
+ }
+ }
+ return ret;
+}
+
+function VarLoop() {
+ "use strict";
+ const ret = [];
+ for (var i = 0; i < x.length; i++) {
+ for (var z = 0; z < y.length; z++) {
+ if (x[i] == y[z]) {
+ ret.push(x[i]);
+ break;
+ }
+ }
+ }
+ return ret;
+}