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

Issue 11283002: Simplify range analysis algorithm. (Closed)

Created:
8 years, 1 month ago by Vyacheslav Egorov (Google)
Modified:
8 years, 1 month ago
Reviewers:
Florian Schneider
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Simplify range analysis algorithm. Replace generic fix point range analysis algorithm based on widening and narrowing operators with an ad hoc single dominator tree pass. To improve precision discover initial value and direction of the growth for simple induction variables. R=fschneider@google.com BUG= Committed: https://code.google.com/p/dart/source/detail?r=14068

Patch Set 1 #

Total comments: 10

Patch Set 2 : address comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+205 lines, -212 lines) Patch
M runtime/vm/flow_graph_optimizer.cc View 1 4 chunks +183 lines, -116 lines 0 comments Download
M runtime/vm/intermediate_language.h View 10 chunks +8 lines, -62 lines 0 comments Download
M runtime/vm/intermediate_language.cc View 4 chunks +14 lines, -34 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Vyacheslav Egorov (Google)
8 years, 1 month ago (2012-10-24 18:27:45 UTC) #1
Florian Schneider
lgtm https://codereview.chromium.org/11283002/diff/1/runtime/vm/flow_graph_optimizer.cc File runtime/vm/flow_graph_optimizer.cc (right): https://codereview.chromium.org/11283002/diff/1/runtime/vm/flow_graph_optimizer.cc#newcode1645 runtime/vm/flow_graph_optimizer.cc:1645: enum GrowthDirection { I'd rename this to just ...
8 years, 1 month ago (2012-10-25 11:15:43 UTC) #2
Vyacheslav Egorov (Google)
8 years, 1 month ago (2012-10-25 11:24:27 UTC) #3
thanks, landing

https://codereview.chromium.org/11283002/diff/1/runtime/vm/flow_graph_optimiz...
File runtime/vm/flow_graph_optimizer.cc (right):

https://codereview.chromium.org/11283002/diff/1/runtime/vm/flow_graph_optimiz...
runtime/vm/flow_graph_optimizer.cc:1645: enum GrowthDirection {
On 2012/10/25 11:15:43, Florian Schneider wrote:
> I'd rename this to just Direction. Growth implies growing numbers which is not
> the case with e.g. i--.

Done.

https://codereview.chromium.org/11283002/diff/1/runtime/vm/flow_graph_optimiz...
runtime/vm/flow_graph_optimizer.cc:1646: UNKNOWN,
On 2012/10/25 11:15:43, Florian Schneider wrote:
> Maybe rename to the more common style
> 
> kUnknown, kPositive, kNegative, kBoth

Done.

https://codereview.chromium.org/11283002/diff/1/runtime/vm/flow_graph_optimiz...
runtime/vm/flow_graph_optimizer.cc:2002: // The value is comming from outside of
the loop.
On 2012/10/25 11:15:43, Florian Schneider wrote:
> s/comming/coming/

Done.

https://codereview.chromium.org/11283002/diff/1/runtime/vm/flow_graph_optimiz...
runtime/vm/flow_graph_optimizer.cc:2059: // We transitively discovered all
dependecies of the given phi
On 2012/10/25 11:15:43, Florian Schneider wrote:
> s/dependecies/dependencies/

Done.

https://codereview.chromium.org/11283002/diff/1/runtime/vm/flow_graph_optimiz...
runtime/vm/flow_graph_optimizer.cc:2060: // and confirmed that it depends on a
sigle value comming from outside of
On 2012/10/25 11:15:43, Florian Schneider wrote:
> s/sigle/single/
> s/comming/coming/g

Done.

Powered by Google App Engine
This is Rietveld 408576698