[gambit-list] Guile's new compiler

Marc Feeley feeley at iro.umontreal.ca
Wed Nov 4 22:26:07 EST 2015


As far as I can tell, all of those optimizations are currently done by the Gambit compiler except for loop-invariant code motion and loop inversion.  I’m not sure how much those optimizations are useful however.

Marc

> On Nov 4, 2015, at 10:08 PM, lucier at math.purdue.edu wrote:
> 
> Guile’s 2.1.1 announcement includes the following paragraph:
> 
> ======================================================================
> 
> ** Better optimizations via compiler rewrite
> 
> Guile's compiler now uses a Continuation-Passing Style (CPS)
> intermediate language, allowing it to reason easily about temporary
> values and control flow.  Examples of optimizations that this permits
> are optimal contification, optimal common subexpression elimination,
> dead code elimination, loop-invariant code motion, loop peeling, loop
> inversion, parallel moves with at most one temporary, allocation of
> stack slots using precise liveness information, and closure
> optimization.  For more, see "Continuation-Passing Style" in the manual.
> 
> ======================================================================
> 
> 
> Are some of these missing from Gambit’s compiler?  Could they be “easily” added (for some value of “easily”)?
> 
> Brad
> 
> (Sorry for the third try sending this to the mail list.  El capitan (Mac OS X 10.11) mail is “different”.)
> _______________________________________________
> Gambit-list mailing list
> Gambit-list at iro.umontreal.ca
> https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list




More information about the Gambit-list mailing list