// Copyright 2014 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // Flags: --allow-natives-syntax function deepEquals(a, b) { if (a === b) { if (a === 0) return 1 / a === 1 / b; return true; } if (typeof a != typeof b) return false; if (typeof a == "number") return isNaN(a) && isNaN(b); if (typeof a !== "object" && typeof a !== "function") return false; if (objectClass === 'RegExp') { return a.toString() === b.toString(); } if (objectClass === "Function") return false; if (objectClass === "Array") { var elementsCount = 0; if (a.length != b.length) { return false; } for (var i = 0; i < a.length; i++) { if (!deepEquals(a[i], b[i])) return false; } return true; } } function __f_1() { var __v_0 = []; for (var i = 0; i < 2; i++) { __v_0.push([]); deepEquals(2, __v_0.length); } }; %PrepareFunctionForOptimization(__f_1); __f_1(); %OptimizeFunctionOnNextCall(__f_1); __f_1();