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 --ignition-staging --turbo | 5 // Flags: --allow-natives-syntax --ignition-staging --turbo |
6 | 6 |
7 class Base {} | 7 function f(do_osr) { |
8 class Subclass extends Base { | 8 for (var i = 0; i < 3; ++i) { |
9 constructor() { | 9 if (i == 1 && do_osr) %OptimizeOsr(); |
10 %DeoptimizeNow(); | |
11 super(); | |
12 } | 10 } |
13 } | 11 } |
14 new Subclass(); | 12 |
15 new Subclass(); | 13 f(false); |
16 %OptimizeFunctionOnNextCall(Subclass); | 14 f(false); |
17 new Subclass(); | 15 %BaselineFunctionOnNextCall(f); |
| 16 f(false); |
| 17 f(true); |
OLD | NEW |