diff --git a/test/js-perf-test/JSTests.json b/test/js-perf-test/JSTests.json index a01033d42e..e143ebfca5 100644 --- a/test/js-perf-test/JSTests.json +++ b/test/js-perf-test/JSTests.json @@ -321,6 +321,18 @@ "main": "run.js", "test_flags": ["construct-arraylike"] }, + { + "name": "ConstructByTypedArray", + "main": "run.js", + "test_flags": ["construct-typedarray"] + }, + { + "name": "ConstructByTypedArray--noTF", + "flags": ["--no-turbo"], + "results_regexp": "^TypedArrays\\-ConstructByTypedArray\\(Score\\): (.+)$", + "main": "run.js", + "test_flags": ["construct-typedarray"] + }, { "name": "Sort", "main": "run.js", diff --git a/test/js-perf-test/TypedArrays/construct-typedarray.js b/test/js-perf-test/TypedArrays/construct-typedarray.js new file mode 100644 index 0000000000..b2ee34483f --- /dev/null +++ b/test/js-perf-test/TypedArrays/construct-typedarray.js @@ -0,0 +1,17 @@ +// 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('ConstructByTypedArray', [1000], [ + new Benchmark('ConstructByTypedArray', false, false, 0, constructor), +]); + +var length = 1024; +var arr = new Uint8Array(length); +for (var i = 0; i < length; i++) { + arr[i] = i; +} + +function constructor() { + new Float64Array(arr); +}