[crankshaft] Disable escape analysis of nested objects.
BUG=chromium:669024 Review-Url: https://codereview.chromium.org/2531163006 Cr-Commit-Position: refs/heads/master@{#41389}
This commit is contained in:
parent
6572b5622e
commit
e19f43df61
@ -399,7 +399,7 @@ DEFINE_BOOL(inline_construct, true, "inline constructor calls")
|
||||
DEFINE_BOOL(inline_arguments, true, "inline functions with arguments object")
|
||||
DEFINE_BOOL(inline_accessors, true, "inline JavaScript accessors")
|
||||
DEFINE_BOOL(inline_into_try, true, "inline into try blocks")
|
||||
DEFINE_INT(escape_analysis_iterations, 2,
|
||||
DEFINE_INT(escape_analysis_iterations, 1,
|
||||
"maximum number of escape analysis fix-point iterations")
|
||||
|
||||
DEFINE_BOOL(concurrent_recompilation, true,
|
||||
|
21
test/mjsunit/regress/regress-669024.js
Normal file
21
test/mjsunit/regress/regress-669024.js
Normal file
@ -0,0 +1,21 @@
|
||||
// Copyright 2016 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 h(y) { return y.u; }
|
||||
|
||||
function g() { return h.apply(0, arguments); }
|
||||
|
||||
function f(x) {
|
||||
var o = { u : x };
|
||||
return g(o);
|
||||
}
|
||||
|
||||
f(42);
|
||||
f(0.1);
|
||||
|
||||
%OptimizeFunctionOnNextCall(f);
|
||||
|
||||
assertEquals(undefined, f(undefined));
|
Loading…
Reference in New Issue
Block a user