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

Issue 10830109: Add type propagation phase in optimizing compiler (work in progress). (Closed)

Created:
8 years, 4 months ago by regis
Modified:
8 years, 4 months ago
Reviewers:
srdjan
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Add type propagation phase in optimizing compiler (work in progress). Remove unused cid field from Instruction node and add it to nodes subclassing Instruction that need it: BranchInstr, ReturnInstr, ThrowInstr, ReThrowInstr. Remove unused icdata field from Instruction node and add it to BranchInstr. Committed: https://code.google.com/p/dart/source/detail?r=10125

Patch Set 1 #

Total comments: 12

Patch Set 2 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+281 lines, -169 lines) Patch
M runtime/vm/compiler.cc View 1 1 chunk +4 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_builder.cc View 1 2 chunks +23 lines, -93 lines 0 comments Download
M runtime/vm/flow_graph_compiler.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/flow_graph_optimizer.h View 1 1 chunk +26 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph_optimizer.cc View 1 5 chunks +30 lines, -3 lines 0 comments Download
M runtime/vm/il_printer.h View 1 2 chunks +9 lines, -0 lines 0 comments Download
M runtime/vm/il_printer.cc View 1 9 chunks +41 lines, -16 lines 0 comments Download
M runtime/vm/intermediate_language.h View 1 18 chunks +45 lines, -53 lines 0 comments Download
M runtime/vm/intermediate_language.cc View 1 3 chunks +84 lines, -3 lines 0 comments Download
M runtime/vm/isolate.h View 1 2 chunks +3 lines, -0 lines 0 comments Download
M runtime/vm/isolate.cc View 1 1 chunk +15 lines, -0 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
regis
8 years, 4 months ago (2012-08-01 00:20:24 UTC) #1
srdjan
LGTM https://chromiumcodereview.appspot.com/10830109/diff/1/runtime/vm/intermediate_language.cc File runtime/vm/intermediate_language.cc (right): https://chromiumcodereview.appspot.com/10830109/diff/1/runtime/vm/intermediate_language.cc#newcode394 runtime/vm/intermediate_language.cc:394: // Even better: we could keep the set ...
8 years, 4 months ago (2012-08-01 15:07:36 UTC) #2
regis
8 years, 4 months ago (2012-08-01 17:10:35 UTC) #3
Thanks!

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

https://chromiumcodereview.appspot.com/10830109/diff/1/runtime/vm/intermediat...
runtime/vm/intermediate_language.cc:394: // Even better: we could keep the set
of the input static types intact.
On 2012/08/01 15:07:36, srdjan wrote:
> Computing the least specific type is not helping enough, we need to know all
> types that can possibly occur (set of types).

We agree. This will happen in a later cl.

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

https://chromiumcodereview.appspot.com/10830109/diff/1/runtime/vm/intermediat...
runtime/vm/intermediate_language.h:207: friend class ReThrowInstr;
On 2012/08/01 15:07:36, srdjan wrote:
> This is all because of access to GetNextCiD and GetICDataForCid. I wonder if
we
> could make it better. One possibility would be to move GetNextCid and
> GetICDataForCid into isolate.

Done.

https://chromiumcodereview.appspot.com/10830109/diff/1/runtime/vm/intermediat...
runtime/vm/intermediate_language.h:303: bool StaticTypeIsMoreSpecificThan(const
AbstractType& dst_type);
On 2012/08/01 15:07:36, srdjan wrote:
> const ?

Done. But I needed to overload AsConstant with a const variant (as well as all
As#classname).

https://chromiumcodereview.appspot.com/10830109/diff/1/runtime/vm/intermediat...
runtime/vm/intermediate_language.h:2387: cid_(-1),
On 2012/08/01 15:07:36, srdjan wrote:
> make cid_ const and initialize it here.

Done.

https://chromiumcodereview.appspot.com/10830109/diff/1/runtime/vm/intermediat...
runtime/vm/intermediate_language.h:2420: cid_(-1),
On 2012/08/01 15:07:36, srdjan wrote:
> ditto

Done.

https://chromiumcodereview.appspot.com/10830109/diff/1/runtime/vm/intermediat...
runtime/vm/intermediate_language.h:2457: cid_(-1),
On 2012/08/01 15:07:36, srdjan wrote:
> ditto

Done.

Powered by Google App Engine
This is Rietveld 408576698