http://gwt-code-reviews.appspot.com/1236801/diff/22001/6004 File dev/core/src/com/google/gwt/dev/javac/rebind/CachedClientDataMap.java (right):
http://gwt-code-reviews.appspot.com/1236801/diff/22001/6004#newcode30 dev/core/src/com/google/gwt/dev/javac/rebind/CachedClientDataMap.java:30: public CachedClientDataMap() { Is this supposed to be for persistent caching across runs? Is there code that serializes/deserializes it somewhere? If it fails to deserialize, then we probably need to handle it by running the generator again. http://gwt-code-reviews.appspot.com/1236801/diff/22001/6009 File dev/core/src/com/google/gwt/dev/javac/typemodel/JClassType.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/22001/6009#newcode574 dev/core/src/com/google/gwt/dev/javac/typemodel/JClassType.java:574: * structure of a type. Use a type's publicly accessible api to build a I think you need to reword this, since you're building the signature based on the type's structure, not the public API. http://gwt-code-reviews.appspot.com/1236801/diff/22001/6009#newcode683 dev/core/src/com/google/gwt/dev/javac/typemodel/JClassType.java:683: lazyTypeStructureSignature = Util.computeStrongName(sb.toString().getBytes()); This function looks expensive: 1) We're iterating over a lot of stuff. Probably can't be helped. 2) We're using lots of functions that create lists of strings from bits. Seems like we could just use the bits directly. 3) The hash function seems potentially expensive. Can we measure it? How many times will it be called? (For example, 100us * 1000 = 100ms, which is 2% of our total budget). We don't want to add new work into the cost of refreshes, so we need to have a plan for dealing with this if it turns out to be non-trivial. http://gwt-code-reviews.appspot.com/1236801/diff/22001/6011 File user/src/com/google/gwt/resources/ext/ClientBundleRequirements.java (right): http://gwt-code-reviews.appspot.com/1236801/diff/22001/6011#newcode66 user/src/com/google/gwt/resources/ext/ClientBundleRequirements.java:66: void addTypeAndSuperTypeHierarchy(JClassType type); How about just addTypeHierarchy? http://gwt-code-reviews.appspot.com/1236801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
