Imported Upstream version 1.0.0
[platform/upstream/js.git] / js / src / jit-test / tests / jaeger / smallIntTypedArrays.js
1 // vim: set ts=4 sw=4 tw=99 et:
2
3 function testInt8Array(L) {
4     var f = new Int8Array(8);
5     assertEq(f[0], 0);
6     assertEq(f[L], 0);
7     assertEq(f[L+8], undefined);
8     assertEq(f[8], undefined);
9     f[0] = 12;
10     f[L+1] = 13;
11     f[2] = f[1];
12     f[L+3] = 500;
13     f[L+4] = true;
14     f[L+5] = L;
15     assertEq(f[0], 12);
16     assertEq(f[1], 13);
17     assertEq(f[2], 13);
18     assertEq(f[3], -12);
19     assertEq(f[4], 1);
20     assertEq(f[5], 0);
21 }
22
23 function testUint8Array(L) {
24     var f = new Uint8Array(8);
25     assertEq(f[0], 0);
26     assertEq(f[L], 0);
27     assertEq(f[L+8], undefined);
28     assertEq(f[8], undefined);
29     f[0] = 12;
30     f[L+1] = 13;
31     f[2] = f[1];
32     f[L+3] = 500;
33     f[L+4] = true;
34     f[L+5] = L;
35     assertEq(f[0], 12);
36     assertEq(f[1], 13);
37     assertEq(f[2], 13);
38     assertEq(f[3], 244);
39     assertEq(f[4], 1);
40     assertEq(f[5], 0);
41 }
42
43 function testUint8ClampedArray(L) {
44     var f = new Uint8ClampedArray(8);
45     assertEq(f[0], 0);
46     assertEq(f[L], 0);
47     assertEq(f[L+8], undefined);
48     assertEq(f[8], undefined);
49     f[0] = 12;
50     f[L+1] = 13;
51     f[2] = f[1];
52     f[L+3] = 500;
53     f[L+4] = true;
54     f[L+5] = L;
55     assertEq(f[0], 12);
56     assertEq(f[1], 13);
57     assertEq(f[2], 13);
58     assertEq(f[3], 255);
59     assertEq(f[4], 1);
60     assertEq(f[5], 0);
61 }
62
63 function testInt16Array(L) {
64     var f = new Int16Array(8);
65     assertEq(f[0], 0);
66     assertEq(f[L], 0);
67     assertEq(f[L+8], undefined);
68     assertEq(f[8], undefined);
69     f[0] = 12;
70     f[L+1] = 13;
71     f[2] = f[1];
72     f[L+3] = 190000;
73     f[L+4] = true;
74     f[L+5] = L;
75     assertEq(f[0], 12);
76     assertEq(f[1], 13);
77     assertEq(f[2], 13);
78     assertEq(f[3], -6608);
79     assertEq(f[4], 1);
80     assertEq(f[5], 0);
81 }
82
83 function testUint16Array(L) {
84     var f = new Uint16Array(8);
85     assertEq(f[0], 0);
86     assertEq(f[L], 0);
87     assertEq(f[L+8], undefined);
88     assertEq(f[8], undefined);
89     f[0] = 12;
90     f[L+1] = 13;
91     f[2] = f[1];
92     f[L+3] = 190000;
93     f[L+4] = true;
94     f[L+5] = L;
95     assertEq(f[0], 12);
96     assertEq(f[1], 13);
97     assertEq(f[2], 13);
98     assertEq(f[3], 58928);
99     assertEq(f[4], 1);
100     assertEq(f[5], 0);
101 }
102
103 for (var i = 0; i < 10; i++) {
104     testInt8Array(0);
105     testUint8Array(0);
106     testUint8ClampedArray(0);
107     testInt16Array(0);
108     testUint16Array(0);
109     if (i == 5)
110         gc();
111 }
112