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 3 // found in the LICENSE file. 4 5 // Flags: --allow-natives-syntax 6 7 function foo(x) { 8 %DeoptimizeFunction(run); 9 return x; 10 } 11 12 function run() { 13 var line = new Array(2); 14 for (var n = 3; n > 0; n = n - 1) { 15 if (n < foo(line.length)) line = new Array(n); 16 line[0] = n; 17 } 18 } 19 20 assertEquals(void 0, run()); 21 %OptimizeFunctionOnNextCall(run); 22 assertEquals(void 0, run()); 23