guile-commits
[Top][All Lists]
Advanced

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

[Guile-commits] GNU Guile branch, wip-cps-bis, updated. v2.1.0-165-gcd1c


From: Mark H Weaver
Subject: [Guile-commits] GNU Guile branch, wip-cps-bis, updated. v2.1.0-165-gcd1ca75
Date: Wed, 14 Aug 2013 22:27:39 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

http://git.savannah.gnu.org/cgit/guile.git/commit/?id=cd1ca75ea0f38e2eb007da7fb5c45407a1b5cb91

The branch, wip-cps-bis has been updated
       via  cd1ca75ea0f38e2eb007da7fb5c45407a1b5cb91 (commit)
      from  0cfc82718ba9a75ca7637cd8cc56b9b306366e25 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit cd1ca75ea0f38e2eb007da7fb5c45407a1b5cb91
Author: Mark H Weaver <address@hidden>
Date:   Wed Aug 14 18:23:50 2013 -0400

    RTL compiler: emit 'make-closure' where appropriate.
    
    * module/language/cps/compile-rtl.scm (emit-rtl-sequence): For
      procedures with free variables, emit 'make-closure' instead of
      'load-static-procedure'.

-----------------------------------------------------------------------

Summary of changes:
 module/language/cps/compile-rtl.scm |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/module/language/cps/compile-rtl.scm 
b/module/language/cps/compile-rtl.scm
index 98a72e8..1feb801 100644
--- a/module/language/cps/compile-rtl.scm
+++ b/module/language/cps/compile-rtl.scm
@@ -168,8 +168,10 @@
             (($ $const exp)
              (when dst
                (emit `(load-constant ,dst ,exp))))
-            (($ $fun meta self free body)
+            (($ $fun meta self () body)
              (emit `(load-static-procedure ,dst ,self)))
+            (($ $fun meta self free body)
+             (emit `(make-closure ,dst ,self ,(length free))))
             (($ $call proc args)
              (let ((proc-slot (lookup-call-proc-slot label slots))
                    (nargs (length args)))


hooks/post-receive
-- 
GNU Guile



reply via email to

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