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

Issue 12776006: Make allocation of Dart parameters and local variables architecture independent. (Closed)

Created:
7 years, 9 months ago by regis
Modified:
7 years, 9 months ago
Reviewers:
zra, siva
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Make allocation of Dart parameters and local variables architecture independent. Enable a couple more vm tests on ARM. Fix function usage counter access on ARM. Committed: https://code.google.com/p/dart/source/detail?r=20048

Patch Set 1 #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+115 lines, -77 lines) Patch
M runtime/tests/vm/vm.status View 1 chunk +6 lines, -1 line 0 comments Download
M runtime/vm/compiler_test.cc View 2 chunks +5 lines, -3 lines 0 comments Download
M runtime/vm/constants_arm.h View 1 chunk +5 lines, -0 lines 0 comments Download
M runtime/vm/constants_ia32.h View 1 chunk +6 lines, -0 lines 1 comment Download
M runtime/vm/constants_mips.h View 1 chunk +5 lines, -0 lines 0 comments Download
M runtime/vm/constants_x64.h View 1 chunk +6 lines, -0 lines 0 comments Download
M runtime/vm/deopt_instructions.cc View 1 chunk +2 lines, -4 lines 0 comments Download
M runtime/vm/flow_graph_builder.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M runtime/vm/flow_graph_compiler_arm.cc View 1 chunk +16 lines, -1 line 0 comments Download
M runtime/vm/flow_graph_compiler_ia32.cc View 4 chunks +11 lines, -15 lines 0 comments Download
M runtime/vm/flow_graph_compiler_x64.cc View 4 chunks +12 lines, -16 lines 0 comments Download
M runtime/vm/intermediate_language_arm.cc View 3 chunks +11 lines, -7 lines 0 comments Download
M runtime/vm/intermediate_language_ia32.cc View 2 chunks +5 lines, -5 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 2 chunks +6 lines, -4 lines 0 comments Download
M runtime/vm/locations.cc View 1 chunk +2 lines, -3 lines 0 comments Download
M runtime/vm/parser.h View 1 chunk +0 lines, -2 lines 0 comments Download
M runtime/vm/parser.cc View 1 chunk +3 lines, -3 lines 2 comments Download
M runtime/vm/resolver_test.cc View 2 chunks +5 lines, -3 lines 0 comments Download
M runtime/vm/scopes.cc View 1 chunk +5 lines, -6 lines 0 comments Download
M runtime/vm/stack_frame.cc View 1 chunk +2 lines, -2 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
regis
7 years, 9 months ago (2013-03-14 20:19:55 UTC) #1
zra
LGTM with a comment https://codereview.chromium.org/12776006/diff/1/runtime/vm/parser.cc File runtime/vm/parser.cc (right): https://codereview.chromium.org/12776006/diff/1/runtime/vm/parser.cc#newcode164 runtime/vm/parser.cc:164: first_parameter_index_ = kLastParamSlotIndex + num_params ...
7 years, 9 months ago (2013-03-14 21:14:20 UTC) #2
regis
Thanks! https://codereview.chromium.org/12776006/diff/1/runtime/vm/parser.cc File runtime/vm/parser.cc (right): https://codereview.chromium.org/12776006/diff/1/runtime/vm/parser.cc#newcode164 runtime/vm/parser.cc:164: first_parameter_index_ = kLastParamSlotIndex + num_params - 1; On ...
7 years, 9 months ago (2013-03-14 21:32:22 UTC) #3
regis
Committed patchset #1 manually as r20048 (presubmit successful).
7 years, 9 months ago (2013-03-14 21:33:14 UTC) #4
siva
DBC https://codereview.chromium.org/12776006/diff/1/runtime/vm/constants_ia32.h File runtime/vm/constants_ia32.h (right): https://codereview.chromium.org/12776006/diff/1/runtime/vm/constants_ia32.h#newcode79 runtime/vm/constants_ia32.h:79: static const int kFirstLocalSlotIndex = -2; This file ...
7 years, 9 months ago (2013-03-14 21:50:33 UTC) #5
regis
7 years, 9 months ago (2013-03-14 21:59:41 UTC) #6
Message was sent while issue was closed.
On 2013/03/14 21:50:33, siva wrote:
> DBC
> 
> https://codereview.chromium.org/12776006/diff/1/runtime/vm/constants_ia32.h
> File runtime/vm/constants_ia32.h (right):
> 
>
https://codereview.chromium.org/12776006/diff/1/runtime/vm/constants_ia32.h#n...
> runtime/vm/constants_ia32.h:79: static const int kFirstLocalSlotIndex = -2;
> This file was meant for processor specific constant values but the values
above
> seem Dart frame layout specific constants.
> 
> Do you think stack_frame_*.h might be a better place?

I thought of it. Yes, it would be a more proper location. However, we currently
do not have stack_frame_*.h files. We would need to replace stack_frame.h with 4
new architecture specific files.
This would allow to rewrite stack_frame.cc to be cleaner and use the
architecture dependent constants directly, rather than declare getters to fish
them from the cc files. Also, this would allow better dependency checking in the
stubs, which currently assume a lot about the layout.
This is on my list of things to do, but I always struggle between cleaning up
what we have and making progress on the port to ARM :-)

Powered by Google App Engine
This is Rietveld 408576698