guile-devel
[Top][All Lists]
Advanced

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

Re: [Guile-commits] GNU Guile branch, wip-rtl-cps, updated. v2.1.0-180-g


From: Mark H Weaver
Subject: Re: [Guile-commits] GNU Guile branch, wip-rtl-cps, updated. v2.1.0-180-g0d0808a
Date: Tue, 19 Feb 2013 00:53:38 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2 (gnu/linux)

Hi Noah,

"Noah Lavine" <address@hidden> writes:
> commit 0d0808ae3f7390ffb250b9deb6706ad4158cce0e
> Author: Noah Lavine <address@hidden>
> Date:   Mon Feb 18 14:10:58 2013 -0500
>
>     Make Lambda Arguments Mutable
>     
>     * module/language/cps.scm: let variable objects come with an
>       initialization value.
>     * module/language/tree-il/compile-cps.scm: put all lambda arguments in
>       variable boxes, so they are mutable.

Lambda arguments (and all other lexical variables) should only be put
into boxes if they are 'set!' somewhere within their lexical scope.
This can always be determined at compile time.  It is crucial that we
minimize the number of mutable variables, since they inhibit most
optimizations.

The required analysis is already implemented in tree-il/analyze.scm.

     Regards,
       Mark



reply via email to

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