| // 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. | |
| (() => { | |
| function make_tostring() { | |
| return new Function("result = array.toString();"); | |
| } | |
| benchy('SmiToString', make_tostring(), SmiToStringSetup); | |
| benchy('StringToString', make_tostring(), StringToStringSetup); | |
| benchy('SparseSmiToString', make_tostring(), SparseSmiToStringSetup); | |
| benchy('SparseStringToString', make_tostring(), SparseStringToStringSetup); | |
| var array; | |
| var result; | |
| var array_size = 1000; | |
| function SmiToStringSetup() { | |
| array = new Array(); | |
| for (var i = 0; i < array_size; ++i) array[i] = i; | |
| } | |
| function StringToStringSetup() { | |
| array = new Array(); | |
| for (var i = 0; i < array_size; ++i) array[i] = `Item no. ${i}`; | |
| } | |
| function SparseSmiToStringSetup() { | |
| SmiToStringSetup(); | |
| array.length = array.length * 2; | |
| } | |
| function SparseStringToStringSetup() { | |
| StringToStringSetup(); | |
| array.length = array.length * 2; | |
| } | |
| })(); |