Thank you Colin, that helped.

On Thursday, 1 October 2020 at 23:35:04 UTC+2 nilo...@gmail.com wrote:

> GWT itself hasn't changed substantially in many years - improvements have 
> mostly been language features, adding support for incremental compilation, 
> the jsinterop system, etc, so for the most part the optimizations haven't 
> changed.
>
> That said, the best way is almost certainly to take a look at the source 
> code itself, and the JavaToJavaScriptCompiler class has the high level 
> aspects of this. This is a different way to look at the current process, 
> but might give you helpful insights in contrast to the link you shared.
>
> Starting in the compilePermutation() method: 
>
> https://github.com/gwtproject/gwt/blob/master/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java#L304-L467
> This method is well commented, showing the order of operations that take 
> place. Optimizations on Java source itself largely happens at the 
> optimizeJava() method, which itself does very little, just check if it 
> should run, and if so, invokes optimizeJavaToFixedPoint(), then applies one 
> last optimization: RemoveEmptySuperCalls. optimizeJavaToFixedPoint() can 
> be found at 
>
> https://github.com/gwtproject/gwt/blob/master/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java#L1415-L1457
> though it largely just invokes optimizeJavaOneTime in a loop until the 
> code stops changing, and follows up with one optional run to the 
> DataflowOptimizer. optimizeJavaOneTime can be found at
>
> https://github.com/gwtproject/gwt/blob/master/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java#L1492-L1517
> Here you can see the optimizations that happen in the main optimization 
> loop, with a small handful of notes on the order that these must take place.
>
> After this we're back to the compilerPermutation method, which finishes 
> normalizing the code to JS and continuing to optimize this lightly, though 
> not in a loop, just a few specific passes.
>
>
>
>
> On Thursday, October 1, 2020 at 3:52:04 PM UTC-5 George Georgovassilis 
> wrote:
>
>> Is there an up-to-date documentation of optimisations the compiler 
>> applies? An older page [1] discusses some topics but it isn't clear what of 
>> that has been implemented.
>> (apologies for posting here, I asked this question on the user forum [2] 
>> but didn't get any replies)
>>
>> [1] 
>> https://github.com/gwtproject/old_google_code_wiki/blob/master/AdvancedCompilerOptimizations.wiki.md
>> [2] https://groups.google.com/g/google-web-toolkit/c/aOBvgbKjjcw
>>
>>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/7076a1f9-5ee9-4680-97f9-d64c14176237n%40googlegroups.com.

Reply via email to