[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.
No?
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.
Thanks,
Ludo’.
- Re: [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.2-100-g40bd6a7,
Ludovic Courtès <=