OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Flags: --allow-natives-syntax | 5 // Flags: --turbo-filter=* --allow-natives-syntax |
6 | 6 |
7 function h(a) { | 7 var v1 = {}; |
8 if (!a) return false; | 8 function g() { |
9 print(); | 9 v1 = []; |
| 10 for (var i = 0; i < 1; i++) { |
| 11 v1[i](); |
| 12 } |
10 } | 13 } |
11 | 14 |
12 function g(a) { return a.length; } | 15 var v2 = {}; |
13 g('0'); | 16 var v3 = {}; |
14 g('1'); | |
15 | |
16 function f() { | 17 function f() { |
17 h(g([])); | 18 v3 = v2; |
| 19 g(); |
18 } | 20 } |
19 | 21 |
20 f(); | 22 assertThrows(g); |
21 %OptimizeFunctionOnNextCall(f); | 23 %OptimizeFunctionOnNextCall(f); |
22 f(); | 24 assertThrows(f); |
OLD | NEW |