Chromium Code Reviews
DescriptionPrototype re-compiling methods in dart2js
This is a prototype with the ability for dart2js to retry the
compilation of a method after everything has been compiled
once. Information collected during the first compilation can then be
used when retrying the compilation.
During compilation information on whether setters are used on specific
fields is collected. When compilation is retried and there are no
setters for a field it is treated as if it was declared final.
As this is a prototype there are some issues we need to discuss, e.g.
* The two queues should probably be generalized some way - maybe with
listeners on specific changes to the collected information
* Throwing Pass2BailoutException when retrying compilation is a bit of
a hack. We should probably not try to retry something we can't.
* Where to store the imformation collected during compilation
This is one way of improving Delta Blue with 25-30%.
R=ahe@google.com, ngeoffray@google.com, kasperl@google.com, ager@google.com
BUG=
TEST=
Committed: https://code.google.com/p/dart/source/detail?r=8647
Patch Set 1 #
Total comments: 8
Patch Set 2 : Created a datastructure for representing "queue2" #
Total comments: 2
Patch Set 3 : Addressed review comments from ager@ #
Total comments: 8
Patch Set 4 : Use setters unformation from universe #Patch Set 5 : Rebased #Patch Set 6 : Minor fixes #Patch Set 7 : Added comment #
Total comments: 8
Patch Set 8 : Addressed review comments #Patch Set 9 : Use the results from the resolver when trying to detect final fields #
Total comments: 11
Messages
Total messages: 14 (0 generated)
|
|||||||||||||||||||||||||||||||||||||