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

Issue 17101028: Refactor load forwarding pass to use a Place abstraction. (Closed)

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

Description

Refactor load forwarding pass to use a Place abstraction. Place describes a location that code can load from or store to. Start forwarding loads through phis. Previously load forwarding operated directly on load instructions which complicated certain things e.g. implementation of a hash map had to allow looking up a load instruction by store instruction, forwarding through phis might have required introducing synthetic load instructions to be put into the map. R=kmillikin@google.com Committed: https://code.google.com/p/dart/source/detail?r=24426

Patch Set 1 #

Total comments: 30

Patch Set 2 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+920 lines, -299 lines) Patch
M runtime/vm/flow_graph_optimizer.cc View 1 30 chunks +777 lines, -286 lines 0 comments Download
M runtime/vm/il_printer.cc View 3 chunks +9 lines, -2 lines 0 comments Download
M runtime/vm/intermediate_language.h View 7 chunks +10 lines, -8 lines 0 comments Download
M runtime/vm/intermediate_language.cc View 1 1 chunk +10 lines, -0 lines 0 comments Download
M tests/language/load_to_load_forwarding_vm_test.dart View 5 chunks +114 lines, -3 lines 0 comments Download

Messages

Total messages: 5 (0 generated)
Vyacheslav Egorov (Google)
7 years, 6 months ago (2013-06-19 19:26:42 UTC) #1
Kevin Millikin (Google)
This is complicated, but it seems right. LGTM. https://codereview.chromium.org/17101028/diff/1/runtime/vm/flow_graph_optimizer.cc File runtime/vm/flow_graph_optimizer.cc (right): https://codereview.chromium.org/17101028/diff/1/runtime/vm/flow_graph_optimizer.cc#newcode36 runtime/vm/flow_graph_optimizer.cc:36: DEFINE_FLAG(bool, ...
7 years, 6 months ago (2013-06-25 09:18:29 UTC) #2
Florian Schneider
https://codereview.chromium.org/17101028/diff/1/runtime/vm/flow_graph_optimizer.cc File runtime/vm/flow_graph_optimizer.cc (right): https://codereview.chromium.org/17101028/diff/1/runtime/vm/flow_graph_optimizer.cc#newcode3660 runtime/vm/flow_graph_optimizer.cc:3660: kContext It would be more natural to have the ...
7 years, 6 months ago (2013-06-25 09:19:23 UTC) #3
Vyacheslav Egorov (Google)
Thank you for the review. Comments addressed, landing. https://codereview.chromium.org/17101028/diff/1/runtime/vm/flow_graph_optimizer.cc File runtime/vm/flow_graph_optimizer.cc (right): https://codereview.chromium.org/17101028/diff/1/runtime/vm/flow_graph_optimizer.cc#newcode36 runtime/vm/flow_graph_optimizer.cc:36: DEFINE_FLAG(bool, ...
7 years, 6 months ago (2013-06-25 18:02:38 UTC) #4
Vyacheslav Egorov (Google)
7 years, 6 months ago (2013-06-25 18:50:36 UTC) #5
Message was sent while issue was closed.
Committed patchset #2 manually as r24426 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698