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 7function foo(expected, x) { 8 var passed = expected.length == x.length; 9 for (var i = 0; i < expected.length; i++) { 10 if (passed) 11 passed = expected[i] == x[i]; 12 } 13 print("a"); 14 print(passed); 15 16 %DeoptimizeFunction(foo); 17 18 print("b"); 19 print(passed); 20 return passed; 21} 22 23assertTrue(foo([0,1], [0,1])); 24assertTrue(foo([0,2], [0,2])); 25assertFalse(foo([0,2.25], [0,2.75])); 26 27%OptimizeFunctionOnNextCall(foo); 28 29assertTrue(foo([0,1], [0,1])); 30assertTrue(foo([0,2], [0,2])); 31assertFalse(foo([0,2.25], [0,2.75])); 32