| // Copyright 2019 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. |
| |
| function addBenchmark(name, test) { |
| new BenchmarkSuite(name, [1000], |
| [ |
| new Benchmark(name, false, false, 0, test) |
| ]); |
| } |
| |
| function objectLookupStringConstant() { |
| const x = { 1: "foo" }; |
| |
| for (var i = 0; i < 1000; ++i) { |
| const p = x["1"]; |
| } |
| } |
| |
| function objectLookupIndexNumber() { |
| const x = { 1: "foo" }; |
| const a = 1; |
| |
| for (var i = 0; i < 1000; ++i) { |
| const p = x[a]; |
| } |
| } |
| |
| function objectLookupIndexString() { |
| const x = { 1: "foo" }; |
| const a = "1"; |
| |
| for (var i = 0; i < 1000; ++i) { |
| const p = x[a]; |
| } |
| } |
| |
| addBenchmark('Object-Lookup-String-Constant', objectLookupStringConstant); |
| addBenchmark('Object-Lookup-Index-Number', objectLookupIndexNumber); |
| addBenchmark('Object-Lookup-Index-String', objectLookupIndexString); |