| description( |
| "Checks that increased aggressiveness in sparse conditional constant propagation resultin from a node being proven to be force exit does not lead to a cascade of unsound decisions." |
| ); |
| |
| function foo(a) { |
| var i; |
| if (a.push) |
| i = 0; |
| else |
| i = a; |
| var result = 0; |
| while (i < 10) { |
| result += a[i]; |
| i++; |
| } |
| return result; |
| } |
| |
| var array = [54, 5432, 1234, 54, 1235, 64, 75, 532, 64, 2]; |
| |
| silentTestPass = true; |
| noInline(foo); |
| |
| for (var i = 0; i < 2; i = dfgIncrement({f:foo, i:i + 1, n:1})) |
| shouldBe("foo(array)", "8746"); |