guile-commits
[Top][All Lists]
Advanced

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

[Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.11-72-g84422


From: Mark H Weaver
Subject: [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.11-72-g8442211
Date: Sat, 20 Sep 2014 11:13:21 +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=8442211ef0029581b35f784489afcf210491fc41

The branch, stable-2.0 has been updated
       via  8442211ef0029581b35f784489afcf210491fc41 (commit)
       via  f2742bdd68619323da2c5f9f65f10684f6522e3c (commit)
       via  0fce815b1b50bc80092acfea44d03e4739140478 (commit)
       via  8f230e3341c344afe891cc45d0370c42a7813ace (commit)
       via  97c520fd3ff5ae0305b6d236e0bc31f794a6cce6 (commit)
       via  bed025bd2569b1c033f24d7d9e660e39ebf65cac (commit)
       via  156119b0223cf14d335ebda84701a69b2ba95757 (commit)
       via  a85c78ea1393985fdb6e6678dea19135c553d341 (commit)
      from  b38c19a5a5935dc5b874625767ed4951452f46c2 (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 8442211ef0029581b35f784489afcf210491fc41
Author: David Kastrup <address@hidden>
Date:   Sat Sep 20 05:17:54 2014 -0400

    Fix SCM_SMOB_OBJECT{_,_0_,_1_,_2_,_3_}LOC.
    
    Fixes <http://bugs.gnu.org/18495>.
    
    * libguile/smob.h (SCM_SMOB_OBJECT_LOC, SCM_SMOB_OBJECT_0_LOC)
      (SCM_SMOB_OBJECT_1_LOC, SCM_SMOB_OBJECT_2_LOC)
      (SCM_SMOB_OBJECT_3_LOC): These elementary API macros have been broken
      by commit 56164dc47f6616b359f0ad23be208f01a77b55fa in 2009.
    
    Signed-off-by: David Kastrup <address@hidden>

commit f2742bdd68619323da2c5f9f65f10684f6522e3c
Author: Mark H Weaver <address@hidden>
Date:   Sat Sep 20 04:51:02 2014 -0400

    guild disassemble: Use #:prefix instead of #:renamer.
    
    * module/scripts/disassemble.scm: Use #:prefix instead of #:renamer
      in #:use-module clause.

commit 0fce815b1b50bc80092acfea44d03e4739140478
Author: Mark H Weaver <address@hidden>
Date:   Sat Sep 20 04:42:49 2014 -0400

    Document #:prefix option in use-module clauses.
    
    * doc/ref/api-modules.texi (Using Guile Modules): Document #:prefix
      option.

commit 8f230e3341c344afe891cc45d0370c42a7813ace
Author: Mark H Weaver <address@hidden>
Date:   Sat Sep 20 04:09:14 2014 -0400

    SRFI-43: vector-concatenate: Fix error message.
    
    * module/srfi/srfi-43.scm (vector-concatenate): Fix the 'who' of an
      error message.

commit 97c520fd3ff5ae0305b6d236e0bc31f794a6cce6
Author: Mark H Weaver <address@hidden>
Date:   Sat Sep 20 04:05:43 2014 -0400

    VM: Use register "a3" for IP_REG on m68k.
    
    Subset of a patch by Andreas Schwab <address@hidden>.
    Reported by Rob Browning <address@hidden>.
    
    * libguile/vm-engine.h (IP_REG)[__mc68000__]: Use register "a3".

commit bed025bd2569b1c033f24d7d9e660e39ebf65cac
Author: Mark H Weaver <address@hidden>
Date:   Sat Sep 20 03:59:51 2014 -0400

    VM: Allow the C compiler to choose FP_REG on ARM.
    
    Reported by Rob Browning <address@hidden>.
    
    * libguile/vm-engine.h (IP_REG)[__arm__]: Remove explicit register
      choice ("r7") for FP_REG, which was reported to cause compilation
      failures on ARM.

commit 156119b0223cf14d335ebda84701a69b2ba95757
Author: Mark H Weaver <address@hidden>
Date:   Sat Sep 20 03:49:46 2014 -0400

    Do not assume that 64-bit integers will be 64-bit aligned.
    
    * libguile/foreign.c (raw_bytecode, objcode_cells):
    * libguile/gsubr.c (raw_bytecode, objcode_cells): Use SCM_ALIGNED to
      ensure 64-bit alignment.

commit a85c78ea1393985fdb6e6678dea19135c553d341
Author: Mark H Weaver <address@hidden>
Date:   Fri Sep 19 21:18:09 2014 -0400

    VM: ASM_MUL for ARM: Add earlyclobber constraint to the SMULL outputs.
    
    Reported by Rob Browning <address@hidden>.
    
    * libguile/vm-i-scheme.c (ASM_MUL)[ARM]: Add earlyclobber (&) constraint
      to the SMULL output registers.

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

Summary of changes:
 doc/ref/api-modules.texi       |   37 +++++++++++++++++++++++++------------
 libguile/foreign.c             |    6 +++---
 libguile/gsubr.c               |    7 ++++---
 libguile/smob.h                |   10 +++++-----
 libguile/vm-engine.h           |    6 +++---
 libguile/vm-i-scheme.c         |    5 ++---
 module/scripts/disassemble.scm |    5 ++---
 module/srfi/srfi-43.scm        |    2 +-
 8 files changed, 45 insertions(+), 33 deletions(-)

diff --git a/doc/ref/api-modules.texi b/doc/ref/api-modules.texi
index 0f54e01..e9d7aec 100644
--- a/doc/ref/api-modules.texi
+++ b/doc/ref/api-modules.texi
@@ -1,6 +1,6 @@
 @c -*-texinfo-*-
 @c This is part of the GNU Guile Reference Manual.
address@hidden Copyright (C)  1996, 1997, 2000, 2001, 2002, 2003, 2004, 2007, 
2008, 2009, 2010, 2011, 2012, 2013
address@hidden Copyright (C)  1996, 1997, 2000-2004, 2007-2014
 @c   Free Software Foundation, Inc.
 @c See the file guile.texi for copying conditions.
 
@@ -126,6 +126,16 @@ them to suit the current module's needs.  For example:
               #:renamer (symbol-prefix-proc 'unixy:)))
 @end lisp
 
address@hidden
+or more simply:
+
address@hidden prefix
address@hidden
+(use-modules ((ice-9 popen)
+              #:select ((open-pipe . pipe-open) close-pipe)
+              #:prefix unixy:))
address@hidden lisp
+
 Here, the interface specification is more complex than before, and the
 result is that a custom interface with only two bindings is created and
 subsequently accessed by the current module.  The mapping of old to new
@@ -184,21 +194,24 @@ whose public interface is found and used.
 
 @cindex binding renamer
 @lisp
- (MODULE-NAME [#:select SELECTION] [#:renamer RENAMER])
+ (MODULE-NAME [#:select SELECTION]
+              [#:prefix PREFIX]
+              [#:renamer RENAMER])
 @end lisp
 
 in which case a custom interface is newly created and used.
 @var{module-name} is a list of symbols, as above; @var{selection} is a
-list of selection-specs; and @var{renamer} is a procedure that takes a
-symbol and returns its new name.  A selection-spec is either a symbol or
-a pair of symbols @code{(ORIG . SEEN)}, where @var{orig} is the name in
-the used module and @var{seen} is the name in the using module.  Note
-that @var{seen} is also passed through @var{renamer}.
-
-The @code{#:select} and @code{#:renamer} clauses are optional.  If both are
-omitted, the returned interface has no bindings.  If the @code{#:select}
-clause is omitted, @var{renamer} operates on the used module's public
-interface.
+list of selection-specs; @var{prefix} is a symbol that is prepended to
+imported names; and @var{renamer} is a procedure that takes a symbol and
+returns its new name.  A selection-spec is either a symbol or a pair of
+symbols @code{(ORIG . SEEN)}, where @var{orig} is the name in the used
+module and @var{seen} is the name in the using module.  Note that
address@hidden is also modified by @var{prefix} and @var{renamer}.
+
+The @code{#:select}, @code{#:prefix}, and @code{#:renamer} clauses are
+optional.  If all are omitted, the returned interface has no bindings.
+If the @code{#:select} clause is omitted, @var{prefix} and @var{renamer}
+operate on the used module's public interface.
 
 In addition to the above, @var{spec} can also include a @code{#:version} 
 clause, of the form:
diff --git a/libguile/foreign.c b/libguile/foreign.c
index 01af900..5c30d54 100644
--- a/libguile/foreign.c
+++ b/libguile/foreign.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2010, 2011, 2012, 2013  Free Software Foundation, Inc.
+/* Copyright (C) 2010-2014  Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public License
@@ -814,7 +814,7 @@ SCM_DEFINE (scm_pointer_to_procedure, "pointer->procedure", 
3, 0, 0,
 
 static const struct
 {
-  scm_t_uint64 dummy; /* ensure 8-byte alignment; perhaps there's a better way 
*/
+  SCM_ALIGNED (8) scm_t_uint64 dummy; /* alignment */
   const scm_t_uint8 bytes[10 * (sizeof (struct scm_objcode) + 8
                                 + sizeof (struct scm_objcode) + 32)];
 } raw_bytecode = {
@@ -867,7 +867,7 @@ make_objcode_trampoline (unsigned int nargs)
 
 static const struct
 {
-  scm_t_uint64 dummy; /* alignment */
+  SCM_ALIGNED (8) scm_t_uint64 dummy; /* alignment */
   scm_t_cell cells[10 * 2]; /* 10 double cells */
 } objcode_cells = {
   0,
diff --git a/libguile/gsubr.c b/libguile/gsubr.c
index b6f261f..f6357e1 100644
--- a/libguile/gsubr.c
+++ b/libguile/gsubr.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2006, 2008, 2009, 2010, 
2011 Free Software Foundation, Inc.
+/* Copyright (C) 1995-2001, 2006, 2008-2011,
+ *   2014 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public License
@@ -213,7 +214,7 @@
 */
 static const struct
 {
-  scm_t_uint64 dummy; /* ensure 8-byte alignment; perhaps there's a better way 
*/
+  SCM_ALIGNED (8) scm_t_uint64 dummy; /* alignment */
   const scm_t_uint8 bytes[121 * (sizeof (struct scm_objcode) + 16
                                  + sizeof (struct scm_objcode) + 32)];
 } raw_bytecode = {
@@ -317,7 +318,7 @@ static const struct
 
 static const struct
 {
-  scm_t_uint64 dummy; /* alignment */
+  SCM_ALIGNED (8) scm_t_uint64 dummy; /* alignment */
   scm_t_cell cells[121 * 2]; /* 11*11 double cells */
 } objcode_cells = {
   0,
diff --git a/libguile/smob.h b/libguile/smob.h
index 60abe37..f910a24 100644
--- a/libguile/smob.h
+++ b/libguile/smob.h
@@ -156,14 +156,14 @@ scm_new_double_smob (scm_t_bits tc, scm_t_bits data1,
 #define SCM_SET_SMOB_OBJECT_1(x,obj)   (SCM_SET_SMOB_OBJECT_N ((x), 1, (obj)))
 #define SCM_SET_SMOB_OBJECT_2(x,obj)   (SCM_SET_SMOB_OBJECT_N ((x), 2, (obj)))
 #define SCM_SET_SMOB_OBJECT_3(x,obj)   (SCM_SET_SMOB_OBJECT_N ((x), 3, (obj)))
-#define SCM_SMOB_OBJECT_0_LOC(x)       (SCM_SMOB_OBJECT_N_LOC ((x), 0)))
-#define SCM_SMOB_OBJECT_1_LOC(x)       (SCM_SMOB_OBJECT_N_LOC ((x), 1)))
-#define SCM_SMOB_OBJECT_2_LOC(x)       (SCM_SMOB_OBJECT_N_LOC ((x), 2)))
-#define SCM_SMOB_OBJECT_3_LOC(x)       (SCM_SMOB_OBJECT_N_LOC ((x), 3)))
+#define SCM_SMOB_OBJECT_0_LOC(x)       (SCM_SMOB_OBJECT_N_LOC ((x), 0))
+#define SCM_SMOB_OBJECT_1_LOC(x)       (SCM_SMOB_OBJECT_N_LOC ((x), 1))
+#define SCM_SMOB_OBJECT_2_LOC(x)       (SCM_SMOB_OBJECT_N_LOC ((x), 2))
+#define SCM_SMOB_OBJECT_3_LOC(x)       (SCM_SMOB_OBJECT_N_LOC ((x), 3))
 
 #define SCM_SMOB_OBJECT(x)             (SCM_SMOB_OBJECT_1 (x))
 #define SCM_SET_SMOB_OBJECT(x,obj)     (SCM_SET_SMOB_OBJECT_1 ((x), (obj)))
-#define SCM_SMOB_OBJECT_LOC(x)         (SCM_SMOB_OBJECT_1_LOC (x)))
+#define SCM_SMOB_OBJECT_LOC(x)         (SCM_SMOB_OBJECT_1_LOC (x))
 
 
 #define SCM_SMOB_APPLY_0(x)            (scm_call_0 (x))
diff --git a/libguile/vm-engine.h b/libguile/vm-engine.h
index 46d4cff..178828c 100644
--- a/libguile/vm-engine.h
+++ b/libguile/vm-engine.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2009-2012, 2014 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public License
@@ -74,14 +74,14 @@
 #define FP_REG asm("%r16")
 #endif
 #ifdef __mc68000__
-#define IP_REG asm("a5")
+#define IP_REG asm("a3")
 #define SP_REG asm("a4")
 #define FP_REG
 #endif
 #ifdef __arm__
 #define IP_REG asm("r9")
 #define SP_REG asm("r8")
-#define FP_REG asm("r7")
+#define FP_REG
 #endif
 #endif
 
diff --git a/libguile/vm-i-scheme.c b/libguile/vm-i-scheme.c
index 587aa95..162efab 100644
--- a/libguile/vm-i-scheme.c
+++ b/libguile/vm-i-scheme.c
@@ -1,5 +1,4 @@
-/* Copyright (C) 2001, 2009, 2010, 2011, 2012, 2013,
- *   2014 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2009-2014 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public License
@@ -363,7 +362,7 @@ VM_DEFINE_FUNCTION (149, ge, "ge?", 2)
       {                                                                        
\
        scm_t_signed_bits rlo, rhi;                                     \
        asm ("smull %0, %1, %2, %3\n"                                   \
-            : "=r" (rlo), "=r" (rhi)                                   \
+            : "=&r" (rlo), "=&r" (rhi)                                 \
             : "r" (SCM_UNPACK (x) - scm_tc2_int),                      \
               "r" (SCM_I_INUM (y)));                                   \
        if (SCM_LIKELY (SCM_SRS (rlo, 31) == rhi))                      \
diff --git a/module/scripts/disassemble.scm b/module/scripts/disassemble.scm
index 7dab2dd..6e99bf3 100644
--- a/module/scripts/disassemble.scm
+++ b/module/scripts/disassemble.scm
@@ -1,6 +1,6 @@
 ;;; Disassemble --- Disassemble .go files into something human-readable
 
-;; Copyright 2005, 2008, 2009, 2011 Free Software Foundation, Inc.
+;; Copyright 2005, 2008, 2009, 2011, 2014 Free Software Foundation, Inc.
 ;;
 ;; This program is free software; you can redistribute it and/or
 ;; modify it under the terms of the GNU Lesser General Public License
@@ -28,8 +28,7 @@
 
 (define-module (scripts disassemble)
   #:use-module (system vm objcode)
-  #:use-module ((language assembly disassemble)
-                #:renamer (symbol-prefix-proc 'asm:))
+  #:use-module ((language assembly disassemble) #:prefix asm:)
   #:export (disassemble))
 
 (define %summary "Disassemble a compiled .go file.")
diff --git a/module/srfi/srfi-43.scm b/module/srfi/srfi-43.scm
index 88a3f3f..c1612aa 100644
--- a/module/srfi/srfi-43.scm
+++ b/module/srfi/srfi-43.scm
@@ -304,7 +304,7 @@ from the subsequent locations in VEC ..."
 
 Append each vector in LIST-OF-VECTORS.  Equivalent to:
   (apply vector-append LIST-OF-VECTORS)"
-  (assert-vectors vs 'vector-append)
+  (assert-vectors vs 'vector-concatenate)
   (%vector-concatenate vs))
 
 (define (vector-empty? vec)


hooks/post-receive
-- 
GNU Guile



reply via email to

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