// Copyright 2017 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 --turbo-escape --no-turbo-load-elimination | |
function f(i) { | |
var o1 = {a: 1, b: 2}; | |
var o2 = {a: 1, b: 3}; | |
var o3 = {a: o2.b}; | |
o3.a = ""; | |
o2.a = o1; | |
if (i == 4) return o3; | |
} | |
%PrepareFunctionForOptimization(f); | |
for (var i = 0; i < 100; ++i){ | |
f(i%5) | |
} | |
%OptimizeFunctionOnNextCall(f); | |
f(false); |