e549c7a356
Reason for revert: Should be fixed again with this Blink change to add NeedsManualRebaseline Original issue's description: > Revert of Use ES2015-style TypedArray prototype chain (patchset #5 id:80001 of https://codereview.chromium.org/1541233002/ ) > > Reason for revert: > [Sheriff] Changes layout tests. Please fix upstream first if intended. > > https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/3689 > > Original issue's description: > > Use ES2015-style TypedArray prototype chain > > > > This patch switches TypedArrays to use the prototype chain described > > in the ES2015 specification, which adds a %TypedArray% superclass above > > all individual TypedArray types. Most methods are defined on the > > superclass rather than the subclasses. > > > > In order to prevent a performance regression, a few methods are > > marked as inline. Inlining might prevent code which was previously > > monomorphic from becoming polymorphic, and it was specifically > > applied in places where methods became more polymorphic than before. > > Tests with realistic workloads would be nice to do before this > > ships in stable. > > > > This patch does not bring TypedArrays up to full spec compliance. In > > particular, @@species is not yet supported. > > > > R=cbruni > > BUG=v8:4085 > > LOG=Y > > > > Committed: https://crrev.com/07c91dccbe55c7be3ec75857dee5ad59873330b7 > > Cr-Commit-Position: refs/heads/master@{#33050} > > TBR=caitpotter88@gmail.com,cbruni@chromium.org,littledan@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:4085 > > Committed: https://crrev.com/28b55ffd1e32e09aaf42b8bbb407944d4808e07c > Cr-Commit-Position: refs/heads/master@{#33053} TBR=caitpotter88@gmail.com,cbruni@chromium.org,machenbach@chromium.org BUG=v8:4085 LOG=Y CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1558663002 Cr-Commit-Position: refs/heads/master@{#33067}
42 lines
1.4 KiB
JavaScript
42 lines
1.4 KiB
JavaScript
// Copyright 2015 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.
|
|
|
|
// Flags: --harmony-tostring
|
|
|
|
'use strict';
|
|
|
|
function assertGetterName(expected, object, name) {
|
|
var descr = Object.getOwnPropertyDescriptor(object, name);
|
|
assertSame(expected, descr.get.name);
|
|
}
|
|
|
|
|
|
function assertSetterName(expected, object, name) {
|
|
var descr = Object.getOwnPropertyDescriptor(object, name);
|
|
assertSame(expected, descr.set.name);
|
|
}
|
|
|
|
|
|
assertGetterName('get byteLength', ArrayBuffer.prototype, 'byteLength');
|
|
assertGetterName('get size', Set.prototype, 'size');
|
|
assertGetterName('get size', Map.prototype, 'size');
|
|
|
|
|
|
let TypedArray = Uint8Array.__proto__;
|
|
|
|
assertGetterName('get buffer', TypedArray.prototype, 'buffer');
|
|
assertGetterName('get byteOffset', TypedArray.prototype, 'byteOffset');
|
|
assertGetterName('get byteLength', TypedArray.prototype, 'byteLength');
|
|
assertGetterName('get length', TypedArray.prototype, 'length');
|
|
assertGetterName('get [Symbol.toStringTag]', TypedArray.prototype, Symbol.toStringTag);
|
|
|
|
|
|
assertGetterName('get buffer', DataView.prototype, 'buffer');
|
|
assertGetterName('get byteOffset', DataView.prototype, 'byteOffset');
|
|
assertGetterName('get byteLength', DataView.prototype, 'byteLength');
|
|
|
|
|
|
assertGetterName('get __proto__', Object.prototype, '__proto__');
|
|
assertSetterName('set __proto__', Object.prototype, '__proto__');
|