New issue
Advanced search Search tips

Issue 662845 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug

Blocking:
issue 662423



Sign in to add a comment

Difference between fullcode and crankshaft_opt: plain arguments

Project Member Reported by machenb...@chromium.org, Nov 7 2016

Issue description

# Minimized program:
function foo(x) {
  (function() { x = {}; })()
  return arguments[0];
}
print(foo(42));


# Compared nocrankshaft with noturbo_opt

# Flags of nocrankshaft:
--abort_on_stack_overflow --expose-gc --allow-natives-syntax --invoke-weak-callbacks --omit-quit  --random-seed 148659640 --nocrankshaft
# Flags of noturbo_opt:
--abort_on_stack_overflow --expose-gc --allow-natives-syntax --invoke-weak-callbacks --omit-quit  --random-seed 148659640 --always-opt --turbo-filter=~

Difference:
- [object Object]
+ 42

### Start of configuration nocrankshaft:
[object Object]

### End of configuration nocrankshaft

### Start of configuration noturbo_opt:
42

### End of configuration noturbo_opt

 

Comment 1 by jarin@chromium.org, Nov 7 2016

This looks like a bug. Investigating.
Owner: jarin@chromium.org
Status: Assigned (was: Untriaged)
Thanks
Project Member

Comment 3 by bugdroid1@chromium.org, Nov 7 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/7f801ff35bfd8eac6fc0e64a1b12471ba90f7ad8

commit 7f801ff35bfd8eac6fc0e64a1b12471ba90f7ad8
Author: jarin <jarin@chromium.org>
Date: Mon Nov 07 19:09:22 2016

[crankshaft] Do not optimize argument access if any parameter is context-allocated.

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}

[modify] https://crrev.com/7f801ff35bfd8eac6fc0e64a1b12471ba90f7ad8/src/crankshaft/hydrogen.cc
[modify] https://crrev.com/7f801ff35bfd8eac6fc0e64a1b12471ba90f7ad8/src/crankshaft/hydrogen.h
[add] https://crrev.com/7f801ff35bfd8eac6fc0e64a1b12471ba90f7ad8/test/mjsunit/regress/regress-662845.js

Comment 4 by jarin@chromium.org, Nov 14 2016

Status: Fixed (was: Assigned)
Labels: -Restrict-View-Google v8-foozzie-failure

Sign in to add a comment