// 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 foo(a, c){ for(var f in c) { if ("object" === typeof c[f]) { a[f] = c[f]; foo(a[f], c[f]); } } }; %PrepareFunctionForOptimization(foo); c = { "one" : { x : 1}, "two" : { x : 2}, "thr" : { x : 3, z : 4}, }; foo({}, c); foo({}, c); %OptimizeFunctionOnNextCall(foo); foo({}, c);