mirror of https://github.com/tc39/test262.git
[javascriptcore-test262-automation] Updated curation log with latest revision sha's from export and changed files.
sourceRevisionAtLastExport: 3353b2924e targetRevisionAtLastExport: b0b5c9f9e
This commit is contained in:
parent
3c726256d1
commit
92cd78aaee
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"sourceRevisionAtLastExport": "3353b2924e",
|
||||
"targetRevisionAtLastExport": "b0b5c9f9e",
|
||||
"sourceRevisionAtLastExport": "13bea0a046",
|
||||
"targetRevisionAtLastExport": "d544eaced",
|
||||
"curatedFiles": {
|
||||
"/stress/Number-isNaN-basics.js": "DELETED_IN_TARGET",
|
||||
"/stress/Object_static_methods_Object.getOwnPropertyDescriptors-proxy.js": "DELETED_IN_TARGET",
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
//@ runDefault("--validateGraphAtEachPhase=true", "--jitPolicyScale=0", "--useConcurrentJIT=0")
|
||||
|
||||
'use strict';
|
||||
function foo() {
|
||||
return arguments[1][0] === arguments[0];
|
||||
}
|
||||
for (let i = 0; i < 100000; ++i) {
|
||||
foo(0, 0);
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
function assert(b) {
|
||||
if (!b)
|
||||
throw new Error;
|
||||
|
||||
}
|
||||
|
||||
const originalLength = 10000;
|
||||
let arr = new Proxy([], {
|
||||
has(...args) {
|
||||
assert(parseInt(args[1]) < originalLength);
|
||||
assert(args[0].length - 10 === originalLength);
|
||||
return Reflect.has(...args);
|
||||
}
|
||||
});
|
||||
|
||||
for (var i = 0; i < originalLength; i++)
|
||||
arr[i] = [];
|
||||
|
||||
arr.indexOf(new Object(), {
|
||||
valueOf: function () {
|
||||
arr.length += 10;
|
||||
return 0;
|
||||
}
|
||||
});
|
|
@ -0,0 +1,11 @@
|
|||
// This shouldn't crash when running with ASAN.
|
||||
let arr = [];
|
||||
for (var i = 0; i < 1000000; i++)
|
||||
arr[i] = [];
|
||||
|
||||
arr.indexOf(new Object(), {
|
||||
valueOf: function () {
|
||||
arr.length = 0;
|
||||
return 0;
|
||||
}
|
||||
});
|
|
@ -0,0 +1,45 @@
|
|||
function shouldBe(actual, expected) {
|
||||
if (actual !== expected)
|
||||
throw new Error('bad value: ' + actual);
|
||||
}
|
||||
|
||||
class AncestorArray extends Object {
|
||||
get 2() {
|
||||
this.called = true;
|
||||
return 42;
|
||||
}
|
||||
}
|
||||
|
||||
Array.prototype.__proto__ = AncestorArray.prototype;
|
||||
|
||||
{
|
||||
let array = [];
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = [20, 20];
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = ["Hello"];
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = [42.195];
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = ["Hello"];
|
||||
array.length = 42;
|
||||
ensureArrayStorage(array);
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
function assert(b) {
|
||||
if (!b)
|
||||
throw new Error;
|
||||
|
||||
}
|
||||
|
||||
const originalLength = 10000;
|
||||
let arr = new Proxy([], {
|
||||
has(...args) {
|
||||
assert(parseInt(args[1]) < originalLength);
|
||||
assert(args[0].length - 10 === originalLength);
|
||||
return Reflect.has(...args);
|
||||
}
|
||||
});
|
||||
|
||||
for (var i = 0; i < originalLength; i++)
|
||||
arr[i] = [];
|
||||
|
||||
arr.lastIndexOf(new Object(), {
|
||||
valueOf: function () {
|
||||
arr.length += 10;
|
||||
return 0;
|
||||
}
|
||||
});
|
|
@ -0,0 +1,11 @@
|
|||
// This shouldn't crash when running with ASAN.
|
||||
let arr = [];
|
||||
for (var i = 0; i < 1000000; i++)
|
||||
arr[i] = [];
|
||||
|
||||
arr.lastIndexOf(new Object(), {
|
||||
valueOf: function () {
|
||||
arr.length = 0;
|
||||
return 0;
|
||||
}
|
||||
});
|
|
@ -0,0 +1,43 @@
|
|||
function shouldBe(actual, expected) {
|
||||
if (actual !== expected)
|
||||
throw new Error('bad value: ' + actual);
|
||||
}
|
||||
|
||||
Object.defineProperty(Array.prototype, 2, {
|
||||
get() {
|
||||
this.called = true;
|
||||
return 42;
|
||||
}
|
||||
});
|
||||
|
||||
{
|
||||
let array = [];
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = [20, 20];
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = ["Hello"];
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = [42.195];
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = ["Hello"];
|
||||
array.length = 42;
|
||||
ensureArrayStorage(array);
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
function shouldBe(actual, expected) {
|
||||
if (actual !== expected)
|
||||
throw new Error('bad value: ' + actual);
|
||||
}
|
||||
|
||||
|
||||
{
|
||||
let array = [42, , , 0];
|
||||
shouldBe(array.lastIndexOf(Number.NaN), -1);
|
||||
shouldBe(array.lastIndexOf(0), 3);
|
||||
}
|
||||
{
|
||||
let array = [42.195, , , 0];
|
||||
shouldBe(array.lastIndexOf(Number.NaN), -1);
|
||||
}
|
||||
{
|
||||
let array = [42.195, Number.NaN, , 0];
|
||||
shouldBe(array.lastIndexOf(Number.NaN), -1);
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
function shouldBe(actual, expected) {
|
||||
if (actual !== expected)
|
||||
throw new Error('bad value: ' + actual);
|
||||
}
|
||||
|
||||
{
|
||||
let array = [42.195, -0.0, -Infinity];
|
||||
shouldBe(array.lastIndexOf(Infinity), -1);
|
||||
shouldBe(array.lastIndexOf(-Infinity), 2);
|
||||
shouldBe(array.lastIndexOf(42), -1);
|
||||
}
|
||||
{
|
||||
let array = [1, 2, 3, 0];
|
||||
shouldBe(array.lastIndexOf(Infinity), -1);
|
||||
shouldBe(array.lastIndexOf(-Infinity), -1);
|
||||
}
|
||||
{
|
||||
let array = ["String", 42.5, Infinity, 33];
|
||||
shouldBe(array.lastIndexOf(Infinity), 2);
|
||||
shouldBe(array.lastIndexOf(-Infinity), -1);
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
function shouldBe(actual, expected) {
|
||||
if (actual !== expected)
|
||||
throw new Error('bad value: ' + actual);
|
||||
}
|
||||
|
||||
{
|
||||
let array = [42.195, -0.0];
|
||||
shouldBe(array.lastIndexOf(0), 1);
|
||||
shouldBe(array.lastIndexOf(-0), 1);
|
||||
}
|
||||
{
|
||||
let array = [42.195, 0, -0.0];
|
||||
shouldBe(array.lastIndexOf(0), 2);
|
||||
shouldBe(array.lastIndexOf(-0), 2);
|
||||
}
|
||||
{
|
||||
let array = [42, 0];
|
||||
shouldBe(array.lastIndexOf(0), 1);
|
||||
shouldBe(array.lastIndexOf(-0), 1);
|
||||
}
|
||||
{
|
||||
let array = [42, 0, 44];
|
||||
shouldBe(array.lastIndexOf(0), 1);
|
||||
shouldBe(array.lastIndexOf(-0), 1);
|
||||
}
|
|
@ -0,0 +1,66 @@
|
|||
function shouldBe(actual, expected) {
|
||||
if (actual !== expected)
|
||||
throw new Error('bad value: ' + actual);
|
||||
}
|
||||
|
||||
{
|
||||
let array = [];
|
||||
Object.defineProperty(array, 2, {
|
||||
get() {
|
||||
this.called = true;
|
||||
return 42;
|
||||
}
|
||||
});
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = [20, 20];
|
||||
Object.defineProperty(array, 2, {
|
||||
get() {
|
||||
this.called = true;
|
||||
return 42;
|
||||
}
|
||||
});
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = ["Hello"];
|
||||
Object.defineProperty(array, 2, {
|
||||
get() {
|
||||
this.called = true;
|
||||
return 42;
|
||||
}
|
||||
});
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = [42.195];
|
||||
Object.defineProperty(array, 2, {
|
||||
get() {
|
||||
this.called = true;
|
||||
return 42;
|
||||
}
|
||||
});
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = ["Hello"];
|
||||
Object.defineProperty(array, 2, {
|
||||
get() {
|
||||
this.called = true;
|
||||
return 42;
|
||||
}
|
||||
});
|
||||
array.length = 42;
|
||||
ensureArrayStorage(array);
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
function shouldBe(actual, expected) {
|
||||
if (actual !== expected)
|
||||
throw new Error('bad value: ' + actual);
|
||||
}
|
||||
|
||||
class DerivedArray extends Array {
|
||||
get 2() {
|
||||
this.called = true;
|
||||
return 42;
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
let array = [];
|
||||
array.__proto__ = DerivedArray.prototype;
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = [20, 20];
|
||||
array.__proto__ = DerivedArray.prototype;
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = ["Hello"];
|
||||
array.__proto__ = DerivedArray.prototype;
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = [42.195];
|
||||
array.__proto__ = DerivedArray.prototype;
|
||||
array.length = 42;
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
||||
{
|
||||
let array = ["Hello"];
|
||||
array.__proto__ = DerivedArray.prototype;
|
||||
array.length = 42;
|
||||
ensureArrayStorage(array);
|
||||
shouldBe(array.lastIndexOf(42), 2);
|
||||
shouldBe(array.called, true);
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
//@ runDefault("--jitPolicyScale=0")
|
||||
|
||||
function foo() {
|
||||
let j = 0;
|
||||
let arr = [0];
|
||||
arr.foo = 0;
|
||||
for (var i = 0; i < 1024; i++) {
|
||||
arr[0] = new Array(1024);
|
||||
}
|
||||
}
|
||||
|
||||
foo();
|
||||
foo();
|
Loading…
Reference in New Issue