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

Issue 10821108: Ensure that we never try to split range at its end position. (Closed)

Created:
8 years, 4 months ago by Vyacheslav Egorov (Google)
Modified:
8 years, 4 months ago
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Ensure that we never try to split range at its end position. Move parallel moves corresponding to gotos and block entries into this intructions to separate them from normal parallel moves that are used data flow inside basic blocks. Block fixed locations only from instruction's start to instruction end (not to the start of the next instruction). R=fschneider@google.com BUG= Committed: https://code.google.com/p/dart/source/detail?r=10065

Patch Set 1 #

Total comments: 10

Patch Set 2 : address Srdjan's comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+189 lines, -135 lines) Patch
M runtime/vm/flow_graph_allocator.cc View 1 18 chunks +34 lines, -46 lines 0 comments Download
M runtime/vm/il_printer.cc View 3 chunks +14 lines, -1 line 0 comments Download
M runtime/vm/intermediate_language.h View 1 7 chunks +131 lines, -88 lines 0 comments Download
M runtime/vm/intermediate_language.cc View 3 chunks +10 lines, -0 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
Vyacheslav Egorov (Google)
8 years, 4 months ago (2012-07-31 15:21:06 UTC) #1
Florian Schneider
LGTM. https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/flow_graph_allocator.cc File runtime/vm/flow_graph_allocator.cc (right): https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/flow_graph_allocator.cc#newcode547 runtime/vm/flow_graph_allocator.cc:547: // Expected sfhape of live range: Accidental edit? ...
8 years, 4 months ago (2012-07-31 15:31:59 UTC) #2
srdjan
DBC https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/flow_graph_allocator.cc File runtime/vm/flow_graph_allocator.cc (right): https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/flow_graph_allocator.cc#newcode334 runtime/vm/flow_graph_allocator.cc:334: cpu_regs_[reg][0]->AddUseInterval(pos, pos + 1); Please add comment about ...
8 years, 4 months ago (2012-07-31 15:58:35 UTC) #3
Vyacheslav Egorov (Google)
8 years, 4 months ago (2012-07-31 16:18:49 UTC) #4
Thanks for the review.

Comments addressed, landing.

https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/flow_graph_...
File runtime/vm/flow_graph_allocator.cc (right):

https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/flow_graph_...
runtime/vm/flow_graph_allocator.cc:334: cpu_regs_[reg][0]->AddUseInterval(pos,
pos + 1);
On 2012/07/31 15:58:35, srdjan wrote:
> Please add comment about the interval range (beginning of instruction to end
of
> instruction?).

Done.

https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/flow_graph_...
runtime/vm/flow_graph_allocator.cc:547: // Expected sfhape of live range:
On 2012/07/31 15:31:59, Florian Schneider wrote:
> Accidental edit?

Done.

https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/flow_graph_...
runtime/vm/flow_graph_allocator.cc:1099: if (to == range->End()) to -= 1;
On 2012/07/31 15:31:59, Florian Schneider wrote:
> A comment would be good here.

Done.

https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/flow_graph_...
File runtime/vm/flow_graph_builder.cc (right):

https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/flow_graph_...
runtime/vm/flow_graph_builder.cc:2639: if (!current->IsReturn()) {
On 2012/07/31 15:31:59, Florian Schneider wrote:
> This is not part of the fix. I'd remove it.

Done.

https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/intermediat...
File runtime/vm/intermediate_language.h (right):

https://chromiumcodereview.appspot.com/10821108/diff/1/runtime/vm/intermediat...
runtime/vm/intermediate_language.h:2526: // connect live ranges at the start of
the block.
On 2012/07/31 15:31:59, Florian Schneider wrote:
> s/start/end/

Done.

Powered by Google App Engine
This is Rietveld 408576698