I'm about a 3rd of the way through this, but here's some initial
comments.  I'll be able to spend more time on this evening....


http://gwt-code-reviews.appspot.com/1447821/diff/3001/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java
File dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java
(right):

http://gwt-code-reviews.appspot.com/1447821/diff/3001/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java#newcode312
dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java:312:
// prune all Object.getClass() overrides and replace with inline field
ref
It's a shame this can't be called earlier on, so that optimizers can
take advantage of the loss of polymorphism with getClass()...

http://gwt-code-reviews.appspot.com/1447821/diff/3001/dev/core/src/com/google/gwt/dev/jjs/impl/ControlFlowAnalyzer.java
File dev/core/src/com/google/gwt/dev/jjs/impl/ControlFlowAnalyzer.java
(right):

http://gwt-code-reviews.appspot.com/1447821/diff/3001/dev/core/src/com/google/gwt/dev/jjs/impl/ControlFlowAnalyzer.java#newcode937
dev/core/src/com/google/gwt/dev/jjs/impl/ControlFlowAnalyzer.java:937: }
whitespace

http://gwt-code-reviews.appspot.com/1447821/diff/3001/dev/core/src/com/google/gwt/dev/jjs/impl/ControlFlowAnalyzer.java#newcode995
dev/core/src/com/google/gwt/dev/jjs/impl/ControlFlowAnalyzer.java:995:
This seems a bit expensive (iterating through all instantiated types).
It looks like it could be called many times per optimization pass?  For
instance, traverseFrom() is called multiple times in a loop, in
traverseEntryMethods().  Is there any impact on execution time, for
large projects?   It seems like it should only be called once per CFA
pass, no?   Also, traverseFrom is called in many places external to this
class, in tight loops iterating over multiple methods, etc.

http://gwt-code-reviews.appspot.com/1447821/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors

Reply via email to