Good question. Right now, it is a subset of what DuplicateXORemover can do, since it does no inter-block propagation of data. The intent is that once the full CFG is built, we'll use classical dataflow to track clinit calls across blocks. For example, something like this: if(cond) { clinit1(); } else { clinit1(); } clinit1();
should allow the last one to be pruned. An interprocedural CFG could be built to track the same information. Right now, it's more or less the first rev of something to test the effects of the Flattener/Unflattener. It looks like it shouldn't harm the JsInliner. -Ray On Mon, Oct 19, 2009 at 4:41 PM, BobV <b...@google.com> wrote: > > How does this interact with or supersede JsInliner.DuplicateXORemover? > > -- > Bob Vawter > Google Web Toolkit Team > > > > --~--~---------~--~----~------------~-------~--~----~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~----------~----~----~----~------~----~------~--~---