| OLD | NEW | 
|---|
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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: --allow-natives-syntax | 
| 6 | 6 | 
| 7 function foo(x) { | 7 function Foo() {} | 
| 8   if (x === undefined) return; | 8 Foo.prototype.x = 0; | 
| 9   while (true) { | 9 function foo(f) { | 
| 10     while (1 || 2) { } | 10   f.x = 1; | 
| 11     f(); |  | 
| 12   } |  | 
| 13 } | 11 } | 
|  | 12 foo(new Foo); | 
|  | 13 foo(new Foo); | 
| 14 %OptimizeFunctionOnNextCall(foo); | 14 %OptimizeFunctionOnNextCall(foo); | 
| 15 foo(); | 15 foo(new Foo); | 
|  | 16 assertEquals(Foo.prototype.x, 0); | 
| OLD | NEW | 
|---|