7f801ff35b
Note: This CL might regress code that relies on such arguments access. In that case, we could still optimize the access if it accesses at constant index (and the argument at that index is not context-allocated). If any code relies on a general access to context-allocated arguments, we would need to analyze the function for assignment to the arguments - this might be quite tricky. BUG=chromium:662845 Review-Url: https://codereview.chromium.org/2484723002 Cr-Commit-Position: refs/heads/master@{#40813}
16 lines
386 B
JavaScript
16 lines
386 B
JavaScript
// 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 foo(x) {
|
|
(function() { x = 1; })()
|
|
return arguments[0];
|
|
}
|
|
|
|
assertEquals(1, foo(42));
|
|
assertEquals(1, foo(42));
|
|
%OptimizeFunctionOnNextCall(foo);
|
|
assertEquals(1, foo(42));
|