[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.2-100-g4

From: Ludovic Courtès
Subject: Re: [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.2-100-g40bd6a7
Date: Wed, 21 Sep 2011 11:13:30 +0200
User-agent: Gnus/5.110018 (No Gnus v0.18) Emacs/24.0.50 (gnu/linux)

Hi Andy,

Thanks for polishing peval!

"Andy Wingo" <address@hidden> skribis:

> commit 4f33b47591e823500d800ee4f9d98c8ae98ceab8
> Author: Andy Wingo <address@hidden>
> Date:   Wed Sep 21 08:58:09 2011 +0200
>     peval: inlining of let-values
>     * module/language/tree-il/optimize.scm (peval): Add support for
>       let-values.  Try to inline the consumer into the body of the producer,
>       if there is only one return point, and we can figure out how many
>       values are being returned, and that number is compatible with the
>       consumer.
> commit 65a32655253cdfcf4e2caf03a73ac66b05da5f71
> Author: Andy Wingo <address@hidden>
> Date:   Wed Sep 21 08:56:09 2011 +0200
>     peval support for more forms
>     * module/language/tree-il/optimize.scm (peval): Add support for fix,
>       dynwind, dynlet, dynref, module-set, and toplevel-set.  (Mutating a
>       variable directly is similar to calling a function that does so behind
>       our backs, so this presents no additional problem.)

I believe that at least the <let-values> and <fix> cases are dead code
since ‘fix-letrec!’ hasn’t been called at the point ‘peval’ is called.

Also, could you add tests for the new cases handled?  :-)  It’d make it
easier for me to follow, and would help us not break it later.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]