[ARM,MIPS] Skip slow tests
[WebKit-https.git] / JSTests / stress / folding-get-by-val-with-read-only-dont-delete-object.js
1 function shouldBe(actual, expected) {
2     if (actual !== expected)
3         throw new Error('bad value: ' + actual);
4 }
5 noInline(shouldBe);
6
7 var array1 = {0:0, 1:1, 2:2, 3:3, 4:4, 5:5};
8 var array2 = {0:"Hello", 1:"World", 2:"Cocoa"};
9 Object.freeze(array1);
10 Object.freeze(array2);
11
12 function test1()
13 {
14     return array1[0] + array1[1] + array1[2] + array1[3] + array1[4] + array1[5];
15 }
16 noInline(test1);
17
18 function test2()
19 {
20     return array1[0] + array1[1] + array1[2] + array1[3] + array1[4] + array1[5] + (array1[6] | 0);
21 }
22 noInline(test2);
23
24 function test3()
25 {
26     return array2[0] + array2[1] + array2[2];
27 }
28 noInline(test3);
29
30 var array3 = {};
31 Object.defineProperty(array3, 0, {
32     get() { return 42; }
33 });
34 Object.defineProperty(array3, 1, {
35     get() { return 42; }
36 });
37 Object.freeze(array3);
38
39 function test4()
40 {
41     return array3[0] + array3[1];
42 }
43 noInline(test4);
44
45 var array4 = {0:0, 1:1, 2:2, 3:3, 4:4, 5:5};
46 Object.seal(array4);
47
48 function test5()
49 {
50     return array4[0] + array4[1] + array4[2] + array4[3] + array4[4] + array4[5];
51 }
52 noInline(test5);
53
54 for (var i = 0; i < 1e5; ++i) {
55     shouldBe(test1(), 15);
56     shouldBe(test2(), 15);
57     shouldBe(test3(), `HelloWorldCocoa`);
58     shouldBe(test4(), 84);
59     shouldBe(test5(), 15);
60 }