mirror of
https://github.com/tc39/test262.git
synced 2025-05-03 14:30:27 +02:00
* [javascriptcore-test262-automation] changes from git@github.com:WebKit/webkit.git at sha 949e26452cfa153a7f4afe593da97e2fe9e1b706 on Tue Jul 03 2018 14:35:15 GMT-0400 (Eastern Daylight Time)
280 lines
6.2 KiB
JavaScript
280 lines
6.2 KiB
JavaScript
var thing0 = Symbol();
|
|
var thing1 = Symbol();
|
|
var thing2 = Symbol();
|
|
var thing3 = Symbol();
|
|
var thing4 = Symbol();
|
|
var thing5 = Symbol();
|
|
var thing6 = Symbol();
|
|
var thing7 = Symbol();
|
|
var thing8 = Symbol();
|
|
var thing9 = Symbol();
|
|
var thing10 = Symbol();
|
|
var thing11 = Symbol();
|
|
var thing12 = Symbol();
|
|
var thing13 = Symbol();
|
|
var thing14 = Symbol();
|
|
var thing15 = Symbol();
|
|
var thing16 = Symbol();
|
|
var thing17 = Symbol();
|
|
var thing18 = Symbol();
|
|
var thing19 = Symbol();
|
|
var thing20 = Symbol();
|
|
var thing21 = Symbol();
|
|
var thing22 = Symbol();
|
|
var thing23 = Symbol();
|
|
var thing24 = Symbol();
|
|
var thing25 = Symbol();
|
|
var thing26 = Symbol();
|
|
var thing27 = Symbol();
|
|
var thing28 = Symbol();
|
|
var thing29 = Symbol();
|
|
var thing30 = Symbol();
|
|
var thing31 = Symbol();
|
|
var thing32 = Symbol();
|
|
var thing33 = Symbol();
|
|
var thing34 = Symbol();
|
|
var thing35 = Symbol();
|
|
var thing36 = Symbol();
|
|
var thing37 = Symbol();
|
|
var thing38 = Symbol();
|
|
var thing39 = Symbol();
|
|
var thing40 = Symbol();
|
|
var thing41 = Symbol();
|
|
var thing42 = Symbol();
|
|
var thing43 = Symbol();
|
|
var thing44 = Symbol();
|
|
var thing45 = Symbol();
|
|
var thing46 = Symbol();
|
|
var thing47 = Symbol();
|
|
var thing48 = Symbol();
|
|
var thing49 = Symbol();
|
|
var thing50 = Symbol();
|
|
var thing51 = Symbol();
|
|
var thing52 = Symbol();
|
|
var thing53 = Symbol();
|
|
var thing54 = Symbol();
|
|
var thing55 = Symbol();
|
|
var thing56 = Symbol();
|
|
var thing57 = Symbol();
|
|
var thing58 = Symbol();
|
|
var thing59 = Symbol();
|
|
var thing60 = Symbol();
|
|
var thing61 = Symbol();
|
|
var thing62 = Symbol();
|
|
|
|
var things = [];
|
|
for (var i = 0; i < 63; ++i)
|
|
things.push(eval("thing" + i));
|
|
|
|
function foo(o) {
|
|
var result = 0;
|
|
for (var i = 0; i < 1000; ++i) {
|
|
var value = things[i & 63];
|
|
switch (value) {
|
|
case thing0:
|
|
result += o.a;
|
|
break;
|
|
case thing1:
|
|
result += o.b;
|
|
break;
|
|
case thing2:
|
|
result += o.c;
|
|
break;
|
|
case thing3:
|
|
result += o.d;
|
|
break;
|
|
case thing4:
|
|
result += o.e;
|
|
break;
|
|
case thing5:
|
|
result += o.f;
|
|
break;
|
|
case thing6:
|
|
result += o.g;
|
|
break;
|
|
case thing7:
|
|
result += o.h;
|
|
break;
|
|
case thing8:
|
|
result += o.i;
|
|
break;
|
|
case thing9:
|
|
result += o.j;
|
|
break;
|
|
case thing10:
|
|
result += o.k;
|
|
break;
|
|
case thing11:
|
|
result += o.a;
|
|
break;
|
|
case thing12:
|
|
result += o.b;
|
|
break;
|
|
case thing13:
|
|
result += o.c;
|
|
break;
|
|
case thing14:
|
|
result += o.d;
|
|
break;
|
|
case thing15:
|
|
result += o.e;
|
|
break;
|
|
case thing16:
|
|
result += o.f;
|
|
break;
|
|
case thing17:
|
|
result += o.g;
|
|
break;
|
|
case thing18:
|
|
result += o.h;
|
|
break;
|
|
case thing19:
|
|
result += o.i;
|
|
break;
|
|
case thing20:
|
|
result += o.j;
|
|
break;
|
|
case thing21:
|
|
result += o.k;
|
|
break;
|
|
case thing22:
|
|
result += o.k;
|
|
break;
|
|
case thing23:
|
|
result += o.a;
|
|
break;
|
|
case thing24:
|
|
result += o.b;
|
|
break;
|
|
case thing25:
|
|
result += o.c;
|
|
break;
|
|
case thing26:
|
|
result += o.d;
|
|
break;
|
|
case thing27:
|
|
result += o.e;
|
|
break;
|
|
case thing28:
|
|
result += o.f;
|
|
break;
|
|
case thing29:
|
|
result += o.g;
|
|
break;
|
|
case thing30:
|
|
result += o.h;
|
|
break;
|
|
case thing31:
|
|
result += o.i;
|
|
break;
|
|
case thing32:
|
|
result += o.j;
|
|
break;
|
|
case thing33:
|
|
result += o.k;
|
|
break;
|
|
case thing34:
|
|
result += o.k;
|
|
break;
|
|
case thing35:
|
|
result += o.k;
|
|
break;
|
|
case thing36:
|
|
result += o.a;
|
|
break;
|
|
case thing37:
|
|
result += o.b;
|
|
break;
|
|
case thing38:
|
|
result += o.c;
|
|
break;
|
|
case thing39:
|
|
result += o.d;
|
|
break;
|
|
case thing40:
|
|
result += o.e;
|
|
break;
|
|
case thing41:
|
|
result += o.f;
|
|
break;
|
|
case thing42:
|
|
result += o.g;
|
|
break;
|
|
case thing43:
|
|
result += o.h;
|
|
break;
|
|
case thing44:
|
|
result += o.i;
|
|
break;
|
|
case thing45:
|
|
result += o.j;
|
|
break;
|
|
case thing46:
|
|
result += o.k;
|
|
break;
|
|
case thing47:
|
|
result += o.i;
|
|
break;
|
|
case thing48:
|
|
result += o.j;
|
|
break;
|
|
case thing49:
|
|
result += o.k;
|
|
break;
|
|
case thing50:
|
|
result += o.k;
|
|
break;
|
|
case thing51:
|
|
result += o.k;
|
|
break;
|
|
case thing52:
|
|
result += o.a;
|
|
break;
|
|
case thing53:
|
|
result += o.b;
|
|
break;
|
|
case thing54:
|
|
result += o.c;
|
|
break;
|
|
case thing55:
|
|
result += o.d;
|
|
break;
|
|
case thing56:
|
|
result += o.e;
|
|
break;
|
|
case thing57:
|
|
result += o.f;
|
|
break;
|
|
case thing58:
|
|
result += o.g;
|
|
break;
|
|
case thing59:
|
|
result += o.h;
|
|
break;
|
|
case thing60:
|
|
result += o.i;
|
|
break;
|
|
case thing61:
|
|
result += o.j;
|
|
break;
|
|
case thing62:
|
|
result += o.k;
|
|
break;
|
|
default:
|
|
result += o.z;
|
|
break;
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
|
|
(function() {
|
|
var o = {a:1, b:2, c:3, d:4, e:5, f:6, g:7, h:8, i:9, j:10, k:11, z:100};
|
|
var result = 0;
|
|
for (var i = 0; i < 1000; ++i)
|
|
result += foo(o);
|
|
if (result != 7966000)
|
|
throw "Error: bad result: " + result;
|
|
})();
|
|
|