Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(71)

Issue 10383147: Fix issue with stack layout assumption going wrong when a dart function has optional parameters and… (Closed)

Created:
8 years, 7 months ago by siva
Modified:
8 years, 7 months ago
Reviewers:
regis
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

Fix issue with stack layout assumption going wrong when a dart function has optional parameters and the number of arguments passed in is incorrect. A call to NoSuchMethodFunction stub is made but the area reserved for the copied arguments/locals is not removed. This results in the NoSuchMethodFunction stub accessing arguments from the wrong location on the stack. Committed: https://code.google.com/p/dart/source/detail?r=7669

Patch Set 1 #

Total comments: 4

Patch Set 2 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+12 lines, -0 lines) Patch
M vm/code_generator_ia32.cc View 1 1 chunk +6 lines, -0 lines 0 comments Download
M vm/flow_graph_compiler_x64.cc View 1 1 chunk +6 lines, -0 lines 0 comments Download

Messages

Total messages: 2 (0 generated)
regis
LGTM! http://codereview.chromium.org/10383147/diff/1/vm/code_generator_ia32.cc File vm/code_generator_ia32.cc (right): http://codereview.chromium.org/10383147/diff/1/vm/code_generator_ia32.cc#newcode550 vm/code_generator_ia32.cc:550: // We need to unwind the space we ...
8 years, 7 months ago (2012-05-14 16:25:15 UTC) #1
siva
8 years, 7 months ago (2012-05-15 21:51:15 UTC) #2
http://codereview.chromium.org/10383147/diff/1/vm/code_generator_ia32.cc
File vm/code_generator_ia32.cc (right):

http://codereview.chromium.org/10383147/diff/1/vm/code_generator_ia32.cc#newc...
vm/code_generator_ia32.cc:550: // We need to unwind the space we reserved for
locals/copied parms etc.
On 2012/05/14 16:25:16, regis wrote:
> locals/copied parms etc. -> locals and copied parameters. The NoSuchMethod
stub
> does not ...

Done.

http://codereview.chromium.org/10383147/diff/1/vm/flow_graph_compiler_x64.cc
File vm/flow_graph_compiler_x64.cc (right):

http://codereview.chromium.org/10383147/diff/1/vm/flow_graph_compiler_x64.cc#...
vm/flow_graph_compiler_x64.cc:1455: // for this method as the
NoSuchMethodFunction stub does not expect to
On 2012/05/14 16:25:16, regis wrote:
> ditto

Done.

Powered by Google App Engine
This is Rietveld 408576698