[JSC] AI should not propagate AbstractValue relying on constant folding phase
[WebKit-https.git] / JSTests / microbenchmarks / polymorphic-get-by-id.js
1 function foo(o) {
2     var result = 0;
3     for (var i = 0; i < 100; ++i)
4         result += o.f;
5     return result;
6 }
7
8 noInline(foo);
9
10 var o = {f:1, g:2};
11 var p = {g:1, f:2};
12 for (var i = 0; i < 10000; ++i) {
13     var result = foo((i & 1) ? o : p);
14     if (result != ((i & 1) ? 100 : 200))
15         throw "Error: bad result for i = " + i + ": " + result;
16 }
17
18 var q = {g:3, h:4, f:5};
19 var result = foo(q);
20 if (result != 500)
21     throw "Error: bad result at end: " + result;