summaryrefslogtreecommitdiff
path: root/deps/v8/test/js-perf-test/SixSpeed/map_set_lookup/es5.js
blob: ddc4ebad89f7a2d5c9bca80655aea8a1f708713f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
// 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.

// This benchmark is based on the six-speed benchmark build output.
// Copyright 2014 Kevin Decker <https://github.com/kpdecker/six-speed/>

new BenchmarkSuite(
  "ES5",
  [1000],
  [new Benchmark("ES5", false, false, 0, ES5, Setup)]
);

var keys, values, set, key;

function Setup() {
  (keys = []), (values = []), (set = []), (key = {});

  for (var i = 0; i < 500; i++) {
    keys.push(i);
    values.push(i);
    set.push(i);
  }

  keys.push(key);
  values.push("bar");
  set.push(key);
}

function ES5() {
  return set.indexOf(key) >= 0 && keys.indexOf(key) >= 0;
}