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

Issue 14021016: Track side-effect free paths in the graph to allow CSE and LICM for instructions that depend on som… (Closed)

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

Description

Track side-effect free paths in the graph to allow CSE and LICM for instructions that depend on some side-effects. Right now only a single side-effect is important for CSE/LICM purposes: externalization. But abstractions are in place to introduce others if needed. R=fschneider@google.com Committed: https://code.google.com/p/dart/source/detail?r=22180

Patch Set 1 #

Total comments: 26

Patch Set 2 : comments addressed #

Patch Set 3 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+627 lines, -348 lines) Patch
M runtime/vm/compiler.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph.h View 1 4 chunks +37 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph.cc View 1 3 chunks +115 lines, -1 line 0 comments Download
M runtime/vm/flow_graph_optimizer.h View 3 chunks +3 lines, -6 lines 0 comments Download
M runtime/vm/flow_graph_optimizer.cc View 1 7 chunks +75 lines, -13 lines 0 comments Download
M runtime/vm/flow_graph_type_propagator.cc View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/hash_map.h View 1 chunk +14 lines, -1 line 0 comments Download
M runtime/vm/intermediate_language.h View 1 108 chunks +352 lines, -314 lines 0 comments Download
M runtime/vm/intermediate_language.cc View 1 6 chunks +25 lines, -12 lines 0 comments Download

Messages

Total messages: 8 (0 generated)
Vyacheslav Egorov (Google)
7 years, 8 months ago (2013-04-26 23:22:18 UTC) #1
Vyacheslav Egorov (Google)
notice that loads from non-immutable locations are fully excluded from CSE/LICM and thus stores are ...
7 years, 8 months ago (2013-04-26 23:25:58 UTC) #2
Vyacheslav Egorov (Google)
moving to Florian for review.
7 years, 7 months ago (2013-04-29 08:21:08 UTC) #3
Florian Schneider
https://codereview.chromium.org/14021016/diff/1/runtime/vm/flow_graph.h File runtime/vm/flow_graph.h (right): https://codereview.chromium.org/14021016/diff/1/runtime/vm/flow_graph.h#newcode301 runtime/vm/flow_graph.h:301: // path between these blocks. This definition is not ...
7 years, 7 months ago (2013-04-29 12:11:54 UTC) #4
srdjan
DBC https://codereview.chromium.org/14021016/diff/1/runtime/vm/flow_graph_optimizer.cc File runtime/vm/flow_graph_optimizer.cc (right): https://codereview.chromium.org/14021016/diff/1/runtime/vm/flow_graph_optimizer.cc#newcode3951 runtime/vm/flow_graph_optimizer.cc:3951: class CSEInstructionMap { : public ValueObject https://codereview.chromium.org/14021016/diff/1/runtime/vm/flow_graph_optimizer.cc#newcode3960 runtime/vm/flow_graph_optimizer.cc:3960: ...
7 years, 7 months ago (2013-04-29 17:16:26 UTC) #5
Vyacheslav Egorov (Google)
Thanks for the review. Landing. https://codereview.chromium.org/14021016/diff/1/runtime/vm/flow_graph.h File runtime/vm/flow_graph.h (right): https://codereview.chromium.org/14021016/diff/1/runtime/vm/flow_graph.h#newcode301 runtime/vm/flow_graph.h:301: // path between these ...
7 years, 7 months ago (2013-04-30 14:01:33 UTC) #6
Florian Schneider
LGTM.
7 years, 7 months ago (2013-04-30 14:07:49 UTC) #7
Vyacheslav Egorov (Google)
7 years, 7 months ago (2013-04-30 14:25:28 UTC) #8
Message was sent while issue was closed.
Committed patchset #3 manually as r22180 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698