[JSC] AI should not propagate AbstractValue relying on constant folding phase
[WebKit-https.git] / JSTests / microbenchmarks / inlined-put-by-val-with-symbol-transition.js
1 var x = Symbol();
2 var y = Symbol();
3 var a = Symbol();
4 var b = Symbol();
5 var c = Symbol();
6 var d = Symbol();
7 var e = Symbol();
8 var f = Symbol();
9 var g = Symbol();
10 var h = Symbol();
11 var i = Symbol();
12
13 function foo(o) {
14     o[x] = 1;
15     o[y] = 2;
16     o[a] = 3;
17     o[b] = 4;
18     o[c] = 5;
19     o[d] = 6;
20     o[e] = 7;
21     o[f] = 8;
22     o[g] = 9;
23     o[h] = 10;
24     o[i] = 11;
25 }
26
27 function Foo() {
28     foo(this);
29 }
30
31 var result = 0;
32
33 for (var i = 0; i < 100000; ++i) {
34     foo({[f]:42});
35     result += (new Foo())[x];
36 }
37
38 if (result != 100000)
39     throw "Bad result: " + result;
40