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

Issue 26823006: Record a correct deoptimization environment for slow-path code. (Closed)

Created:
7 years, 2 months ago by Kevin Millikin (Google)
Modified:
7 years ago
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

Record a correct deoptimization environment for slow-path code. Slow-path code is not marked as a call, so the deoptimization environment built by the register allocator can contain unspilled registers. However, all registers are spilled before the call. Compute the spill slot for all registers and change the ones in the deoptimization environment to be spilled. BUG=https://code.google.com/p/dart/issues/detail?id=13995 R=fschneider@google.com Committed: https://code.google.com/p/dart/source/detail?r=29239

Patch Set 1 #

Patch Set 2 : Added small comments. #

Patch Set 3 : Use an environment value's representation to decide its size. #

Total comments: 7
Unified diffs Side-by-side diffs Delta from patch set Stats (+175 lines, -77 lines) Patch
M runtime/vm/flow_graph_compiler.h View 2 chunks +3 lines, -1 line 0 comments Download
M runtime/vm/flow_graph_compiler.cc View 1 2 3 chunks +72 lines, -1 line 6 comments Download
M runtime/vm/flow_graph_compiler_arm.cc View 1 6 chunks +8 lines, -6 lines 0 comments Download
M runtime/vm/flow_graph_compiler_ia32.cc View 1 6 chunks +8 lines, -7 lines 0 comments Download
M runtime/vm/flow_graph_compiler_mips.cc View 1 6 chunks +8 lines, -6 lines 0 comments Download
M runtime/vm/flow_graph_compiler_x64.cc View 1 6 chunks +8 lines, -7 lines 0 comments Download
M runtime/vm/intermediate_language.h View 2 chunks +5 lines, -4 lines 0 comments Download
M runtime/vm/intermediate_language.cc View 1 chunk +8 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_arm.cc View 8 chunks +10 lines, -9 lines 0 comments Download
M runtime/vm/intermediate_language_ia32.cc View 8 chunks +10 lines, -9 lines 0 comments Download
M runtime/vm/intermediate_language_mips.cc View 8 chunks +10 lines, -9 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 8 chunks +10 lines, -9 lines 0 comments Download
M runtime/vm/locations.h View 1 chunk +4 lines, -9 lines 1 comment Download
M runtime/vm/locations.cc View 1 chunk +11 lines, -0 lines 0 comments Download

Messages

Total messages: 5 (0 generated)
Kevin Millikin (Google)
I'm investigating how to reproduce the failure, so as to create a test.
7 years, 2 months ago (2013-10-14 14:49:21 UTC) #1
Kevin Millikin (Google)
https://codereview.chromium.org/26823006/diff/6001/runtime/vm/flow_graph_compiler.cc File runtime/vm/flow_graph_compiler.cc (right): https://codereview.chromium.org/26823006/diff/6001/runtime/vm/flow_graph_compiler.cc#newcode499 runtime/vm/flow_graph_compiler.cc:499: assembler()->Comment("You betcha!"); Ignore this. https://codereview.chromium.org/26823006/diff/6001/runtime/vm/flow_graph_compiler.cc#newcode506 runtime/vm/flow_graph_compiler.cc:506: it.SetCurrentLocation(Location::DoubleStackSlot(index)); As discussed ...
7 years, 2 months ago (2013-10-14 16:12:52 UTC) #2
Florian Schneider
LGTM as discussed off-line with a test case added. https://codereview.chromium.org/26823006/diff/6001/runtime/vm/flow_graph_compiler.cc File runtime/vm/flow_graph_compiler.cc (right): https://codereview.chromium.org/26823006/diff/6001/runtime/vm/flow_graph_compiler.cc#newcode496 runtime/vm/flow_graph_compiler.cc:496: ...
7 years, 2 months ago (2013-10-17 14:38:52 UTC) #3
Kevin Millikin (Google)
Committed patchset #3 manually as r29239 (presubmit successful).
7 years, 1 month ago (2013-10-25 10:17:26 UTC) #4
srdjan
7 years ago (2013-12-03 22:42:10 UTC) #5
Message was sent while issue was closed.
https://codereview.chromium.org/26823006/diff/6001/runtime/vm/flow_graph_comp...
File runtime/vm/flow_graph_compiler.cc (right):

https://codereview.chromium.org/26823006/diff/6001/runtime/vm/flow_graph_comp...
runtime/vm/flow_graph_compiler.cc:499: assembler()->Comment("You betcha!");
On 2013/10/14 16:12:52, kmillikin wrote:
> Ignore this.

But it was submitted. Can we replace it with something more meaningful :-)?

Powered by Google App Engine
This is Rietveld 408576698