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

Issue 335443002: Setup R10/EDX to be valid Oops before stub calls (Closed)

Created:
6 years, 6 months ago by rmacnak
Modified:
6 years, 6 months ago
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

Setup R10/EDX to be valid Oops before stub calls so when the debug stub saves them to the stack the GC doesn't try to deference out of the heap. BUG=http://dartbug.com/19331 R=asiva@google.com, iposva@google.com Committed: https://code.google.com/p/dart/source/detail?r=37297

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : #

Patch Set 6 : #

Patch Set 7 : #

Patch Set 8 : #

Patch Set 9 : #

Total comments: 6

Patch Set 10 : #

Patch Set 11 : #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+259 lines, -19 lines) Patch
M runtime/vm/debugger_api_impl_test.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +88 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_compiler_arm.cc View 1 2 3 4 5 6 7 8 9 6 chunks +17 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_compiler_arm64.cc View 1 2 3 4 5 6 7 8 9 5 chunks +17 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_compiler_ia32.cc View 1 2 3 4 5 6 7 8 9 6 chunks +17 lines, -0 lines 2 comments Download
M runtime/vm/flow_graph_compiler_mips.cc View 1 2 3 4 5 6 7 8 9 5 chunks +17 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_compiler_x64.cc View 1 2 3 4 5 6 7 8 9 6 chunks +17 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language.cc View 1 2 3 1 chunk +0 lines, -7 lines 0 comments Download
M runtime/vm/intermediate_language_arm.cc View 1 2 3 4 5 6 7 8 9 1 chunk +13 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_arm64.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +13 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_ia32.cc View 1 2 3 4 5 6 7 8 9 1 chunk +13 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_mips.cc View 1 2 3 4 5 6 7 8 9 1 chunk +13 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 1 2 3 4 5 6 7 8 9 1 chunk +13 lines, -0 lines 0 comments Download
M runtime/vm/raw_object.h View 1 2 3 4 5 6 7 8 9 1 chunk +4 lines, -0 lines 0 comments Download
M runtime/vm/runtime_entry_arm.cc View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/runtime_entry_arm64.cc View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/runtime_entry_ia32.cc View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/runtime_entry_mips.cc View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/runtime_entry_x64.cc View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/stub_code_arm.cc View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M runtime/vm/stub_code_arm64.cc View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M runtime/vm/stub_code_ia32.cc View 1 2 2 chunks +2 lines, -1 line 0 comments Download
M runtime/vm/stub_code_mips.cc View 1 2 3 4 5 2 chunks +2 lines, -1 line 0 comments Download
M runtime/vm/stub_code_x64.cc View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 7 (0 generated)
rmacnak
6 years, 6 months ago (2014-06-12 21:54:31 UTC) #1
Ivan Posva
LGTM with Siva's comment. -Ivan https://codereview.chromium.org/335443002/diff/160001/runtime/vm/flow_graph_compiler_mips.cc File runtime/vm/flow_graph_compiler_mips.cc (right): https://codereview.chromium.org/335443002/diff/160001/runtime/vm/flow_graph_compiler_mips.cc#newcode1352 runtime/vm/flow_graph_compiler_mips.cc:1352: __ LoadImmediate(S4, 0); // ...
6 years, 6 months ago (2014-06-12 22:55:09 UTC) #2
siva
lgtm https://codereview.chromium.org/335443002/diff/160001/runtime/vm/debugger_api_impl_test.cc File runtime/vm/debugger_api_impl_test.cc (right): https://codereview.chromium.org/335443002/diff/160001/runtime/vm/debugger_api_impl_test.cc#newcode989 runtime/vm/debugger_api_impl_test.cc:989: OS::Print("Hit line %" Pd "\n", line_number); Is the ...
6 years, 6 months ago (2014-06-12 23:11:34 UTC) #3
rmacnak
https://codereview.chromium.org/335443002/diff/160001/runtime/vm/debugger_api_impl_test.cc File runtime/vm/debugger_api_impl_test.cc (right): https://codereview.chromium.org/335443002/diff/160001/runtime/vm/debugger_api_impl_test.cc#newcode989 runtime/vm/debugger_api_impl_test.cc:989: OS::Print("Hit line %" Pd "\n", line_number); On 2014/06/12 23:11:34, ...
6 years, 6 months ago (2014-06-12 23:50:15 UTC) #4
rmacnak
Committed patchset #11 manually as r37297 (presubmit successful).
6 years, 6 months ago (2014-06-12 23:51:03 UTC) #5
Florian Schneider
dbc: https://codereview.chromium.org/335443002/diff/200001/runtime/vm/flow_graph_compiler_ia32.cc File runtime/vm/flow_graph_compiler_ia32.cc (right): https://codereview.chromium.org/335443002/diff/200001/runtime/vm/flow_graph_compiler_ia32.cc#newcode1185 runtime/vm/flow_graph_compiler_ia32.cc:1185: __ movl(EDX, Immediate(0)); This is bad for unoptimized ...
6 years, 6 months ago (2014-06-20 12:48:54 UTC) #6
Ivan Posva
6 years, 6 months ago (2014-06-20 14:03:31 UTC) #7
Message was sent while issue was closed.
https://codereview.chromium.org/335443002/diff/200001/runtime/vm/flow_graph_c...
File runtime/vm/flow_graph_compiler_ia32.cc (right):

https://codereview.chromium.org/335443002/diff/200001/runtime/vm/flow_graph_c...
runtime/vm/flow_graph_compiler_ia32.cc:1185: __ movl(EDX, Immediate(0));
On 2014/06/20 12:48:54, Florian Schneider wrote:
> This is bad for unoptimized code size.

We were fully aware of the code size issue when we implemented this fix. The
real fix will be to have different stubs, based on the call patterns and the
corresponding live registers.

Powered by Google App Engine
This is Rietveld 408576698