guile-commits
[Top][All Lists]
Advanced

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

[Guile-commits] GNU Guile branch, ra0, updated. v2.1.0-743-g1ef1cc7


From: Andy Wingo
Subject: [Guile-commits] GNU Guile branch, ra0, updated. v2.1.0-743-g1ef1cc7
Date: Mon, 10 Feb 2014 20:08:37 +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=1ef1cc72d9dabc3d06fec8de34f839b1e7d30532

The branch, ra0 has been updated
  discards  1a51415615fbe0f0fce4cd97437b846b82894d9a (commit)
  discards  0c0e0c8b6b45d140892de87b3365a1d70ca0e5a2 (commit)
  discards  61d5e4df33311b9a3fe472de7070b4a5e775787b (commit)
  discards  88c7cda479f9cafc88add7bcd1769c4d22ecb01c (commit)
  discards  ad95aa9ebaed86a0bfc1f8a55566e10bbd190e55 (commit)
  discards  726cc95ffbc38b9006e16bb0a1ce50b5d587d478 (commit)
  discards  4af4068efa2558c2df3b85c4d8170a14dfcdd614 (commit)
  discards  688034187a3f2726aff2e431f610d135495b46be (commit)
  discards  c0e0b6f171522826cfcacb41e9983dfc89582745 (commit)
  discards  1cc0d91efea68c742d86d851c9577801171b790f (commit)
  discards  e0e8802b34b127de835683774159f7da61a45e3b (commit)
  discards  96199263de84a65277dd5fa44cce0d837e4cc37f (commit)
  discards  17f90ef90a4c5a7e1c268257a67255e6ba75b192 (commit)
  discards  f1d289bf582f525e62c65bcc3c9701e9cabf63be (commit)
  discards  9ef4bc075dee74a0f1490bcaa157831b7ded1f3b (commit)
       via  1ef1cc72d9dabc3d06fec8de34f839b1e7d30532 (commit)
       via  274a74c02d007a5ecc1e9d91dc58f0813813e9d6 (commit)
       via  368f7c562037918f8e07bc6f1f10875225932a55 (commit)
       via  67240569395fe86dd5719bfd0c31700d4e006389 (commit)
       via  1814883db00546d165c9466f7a54fa7a2f983082 (commit)
       via  086983cd1defb3df88bbc01c43b9f81f5c26bc7b (commit)
       via  0300e7377d22f3d927406cf8f532c69dd66130dc (commit)
       via  6a95439d5b3eb70a2b6a159e016ec230f8ab4f8e (commit)
       via  78832c2155d64f8965e9abb539847ea5d8f62898 (commit)
       via  1007b7765a241e0e67ebdf270f2d4d7a804fb79f (commit)
       via  f935ba05d6c9b4f33edb7fa4310ff10d77ea3ac9 (commit)
       via  c8e4860050ab7ffa6c398512d560c66fde99b17b (commit)
       via  a3c448d8c228af725f252d506b94319a7cdeddd1 (commit)
       via  e5d625a5e657227469ed71adf65297da2d0642cc (commit)
       via  1ac534e9046d5f060b07ebdb8fa9f7952a674bdb (commit)
       via  2c001086b2b954b912005cfcc09e80a975c0d3b2 (commit)
       via  4e915304519abaabebb426c06984b83ac981b834 (commit)

This update added new revisions after undoing existing revisions.  That is
to say, the old revision is not a strict subset of the new revision.  This
situation occurs when you --force push a change and generate a repository
containing something like this:

 * -- * -- B -- O -- O -- O (1a51415615fbe0f0fce4cd97437b846b82894d9a)
            \
             N -- N -- N (1ef1cc72d9dabc3d06fec8de34f839b1e7d30532)

When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.

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 1ef1cc72d9dabc3d06fec8de34f839b1e7d30532
Author: Daniel Llorens <address@hidden>
Date:   Wed May 8 16:06:40 2013 +0200

    array-contents returns root for empty arrays with empty root
    
    This fixes a compiler issue where (uniform-array->bytevector #2f64())
    failed because of the stricter definition of uniform-vector? on this branch.
    
    Perhaps it would be better if uniform-array->bytevector didn't require
    a contiguous argument.
    
    * libguile/arrays.c: (scm_array_contents): return the root regardless of
      the value of SCM_I_ARRAY_DIMS (ra)->inc.
    * test-suite/tests/arrays.test: check.

commit 274a74c02d007a5ecc1e9d91dc58f0813813e9d6
Author: Daniel Llorens <address@hidden>
Date:   Thu May 2 11:43:31 2013 +0200

    Fix compilation bugs with some kinds of typed arrays
    
    * module/language/glil/compile-assembly.scm: pass (array-contents x)
      to uniform-array->bytevector instead of x, when x is a typed array.
    * test-suite/tests/arrays.test: test an instance of the above that
      failed in Guile 2.0.9.

commit 368f7c562037918f8e07bc6f1f10875225932a55
Author: Daniel Llorens <address@hidden>
Date:   Tue Apr 30 16:11:07 2013 +0200

    Preallocate index list in scm_array_index_map_x
    
    * libguile/array-map.c
      - (scm_array_index_map_x): preallocate the index list instead of
        constructing it on each rank-1 iteration.
      - (ramap, rafe): use SCM_I_ARRAY_V just once.

commit 67240569395fe86dd5719bfd0c31700d4e006389
Author: Daniel Llorens <address@hidden>
Date:   Mon Apr 29 14:19:52 2013 +0200

    Match types used in arrays.c to struct field types
    
    * libguile/arrays.c
      - scm_shared_array_root: check for SCM_I_ARRAYP first.
      - scm_i_shap2ra:
        * check valid bounds in the '(lbnd ubnd) case. This makes
          (make-array 0 '(4 -3)) fail with a 'bad dimension' instead of
          with a 'wrong index' error.
        * use ssize_t for lbnd/ubnd/inc, not long.
      - scm_make_shared_array: use ssize_t for indices, not long.
      - scm_transpose_array: use size_t for ndim, not ulong.
      - scm_i_print_array: idem.

commit 1814883db00546d165c9466f7a54fa7a2f983082
Author: Daniel Llorens <address@hidden>
Date:   Fri Apr 26 13:02:38 2013 +0200

    Don't use ASET in scm_array_index_map_x
    
    * libguile/array-map.c: (scm_array_index_map_x): replace ASET by direct
      use of handle->impl.

commit 086983cd1defb3df88bbc01c43b9f81f5c26bc7b
Author: Daniel Llorens <address@hidden>
Date:   Fri Apr 26 02:05:22 2013 +0200

    In scm_ramapc, only check unrolled axes for emptiness
    
    * libguile/array-map.c: (scm_ramapc)
      - Don't check emptiness while preparing ra0, but only after kroll is 
known,
        and only before kroll. len = 0 will be caught by the unrolled loop.
      - Use ra0 axis length in unroll check depth for rest args, not ra1's.
      - Recover early exit feature when cproc returns 0.

commit 0300e7377d22f3d927406cf8f532c69dd66130dc
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 25 18:49:14 2013 +0200

    Fix scm_ramapc bugs with 0-inc arrays
    
    * libguile/array-map.c: (scm_ramapc): Cannot flag empty on the product
      inc * dim * dim ... Check every dim.
    * test-suite/tests/ramap.test: Tests the 0-inc, non empty case for both
      array-map! and array-copy!.

commit 6a95439d5b3eb70a2b6a159e016ec230f8ab4f8e
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 25 15:18:05 2013 +0200

    Fix corner cases of scm_ramapc
    
    * libguile/array-map.c
      - (scm_ramapc): mismatched axes limit unrollk (kroll). Reorganize
        the function to do all checking as we go.
      - (scm_ra_matchp): unused; remove.
      - (find_unrollk): inlined in scm_ramapc; remove.
      - (klen): inlined in scm_ramapc; remove.
      - (rafill): n is size_t.
      - (racp): n is size_t. Use n and not i0end to bound the loop.
      - (ramap): Use n and not i0end to bound the loop. This is needed for the 
rank
        0 case to work with the new scm_ramapc, as inc may be set to 0 in that 
case.
      - (rafe): idem.
    * test-suite/tests/ramap.test
      - check that size mismatch prevents unrolling (matching behavior III) with
        both array-copy! and array-map!.
      - check that non-contiguous stride in non-ref args prevents unrolling
        (rank 2, discontinuous) with both array-copy! and array-map!.
      - check rank 0 cases with array-for-each, array-map!.

commit 78832c2155d64f8965e9abb539847ea5d8f62898
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 24 23:29:48 2013 +0200

    Rewrite scm_ramapc()
    
    * libguile/array-map.c
      - (cind): replace by cindk, that operates only on the unrolled index set.
      - (klen): new function.
      - (make1array): take extra inc argument.
      - (scm_ramapc): rewrite to unroll as many axes as possible instead of 
just all
        or one.
      - (AREF): lbnd is known to be 0: remove.
      - (ASET): v is known to come from SCM_I_ARRAY_V; assume base, inc, lbnd.
      - (racp): use ssize_t instead of long for the indices.
      - (scm_array_index_map_x): build the index list at the last-but-one axis, 
then
        set the car of the last element, instead of building the list at the 
last axis.
    * test-suite/tests/ramap.test
      - add array-map! test with offset arguments.

commit 1007b7765a241e0e67ebdf270f2d4d7a804fb79f
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 24 17:13:56 2013 +0200

    Check more cases of array-contents
    
    * libguile/arrays.c: (scm_array_contents): fix comment.
    * test-suite/tests/arrays.test: add cases that depend on correct
      setting of CONTIGUOUS_FLAG.

commit f935ba05d6c9b4f33edb7fa4310ff10d77ea3ac9
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 24 16:34:31 2013 +0200

    Check the documented matching behavior of array-map!/copy!
    
    * test-suite/tests/arrays.test: move array-copy! tests to ramap.test.
    * test-suite/tests/ramap.test: check the dissimilar matching behavior of
      array-copy! and array-map! with arguments of different size.

commit c8e4860050ab7ffa6c398512d560c66fde99b17b
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 24 16:00:06 2013 +0200

    Simplify ASET in array-map.c
    
    * libguile/array-map.c: (ASET): this is only ever used with a true vector
      type, so remove use of inc/base/lbnd.

commit a3c448d8c228af725f252d506b94319a7cdeddd1
Author: Daniel Llorens <address@hidden>
Date:   Sat Apr 20 01:27:42 2013 +0200

    Fix compilation errors when reading arrays at the repl
    
    * compile-assembly.scm
      - vector-fold2: handle rank 1 arrays, since this is called with
        the result of array-contents which need not be a vector.
      - dump-constants: fix uses of vector-fold2. Replace vector-length
        on result of array-contents by array-length.
    * libguile/arrays.c
      - scm_array_contents: branch cases not on scm_is_generalized_vector but
        on SCM_I_ARRAYP. Thus lbnd!=0, which could happen with
        scm_is_generalized_vector, never appears in the output.
    * test-suite/tests/arrays.test
      - tests for array-contents.

commit e5d625a5e657227469ed71adf65297da2d0642cc
Author: Daniel Llorens <address@hidden>
Date:   Fri Apr 19 16:44:48 2013 +0200

    Factor out make1array() in scm_ramapc()
    
    * libguile/array-map.c: (scm_ramapc): factor out vector->array conversion
      to aux function make1array.

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

Summary of changes:
 libguile/array-handle.c      |   14 ++------------
 libguile/array-map.c         |    1 +
 test-suite/tests/arrays.test |    2 +-
 3 files changed, 4 insertions(+), 13 deletions(-)

diff --git a/libguile/array-handle.c b/libguile/array-handle.c
index 84e9f88..2252ecc 100644
--- a/libguile/array-handle.c
+++ b/libguile/array-handle.c
@@ -231,21 +231,11 @@ scm_array_get_handle (SCM array, scm_t_array_handle *h)
       }
       break;
     case scm_tc7_array:
+      scm_array_get_handle (SCM_I_ARRAY_V (array), h);
+      h->array = array;
       h->base = SCM_I_ARRAY_BASE (array);
       h->ndims = SCM_I_ARRAY_NDIM (array);
       h->dims = SCM_I_ARRAY_DIMS (array);
-      {
-        scm_t_array_handle vh;
-
-        scm_array_get_handle (SCM_I_ARRAY_V (array), &vh);
-        h->element_type = vh.element_type;
-        h->elements = vh.elements;
-        h->writable_elements = vh.writable_elements;
-        h->vector = vh.vector;
-        h->vref = vh.vref;
-        h->vset = vh.vset;
-        scm_array_handle_release (&vh);
-      }
       break;
     default:
       scm_wrong_type_arg_msg (NULL, 0, array, "array");
diff --git a/libguile/array-map.c b/libguile/array-map.c
index 1670b32..7bb5af5 100644
--- a/libguile/array-map.c
+++ b/libguile/array-map.c
@@ -215,6 +215,7 @@ scm_ramapc (void *cproc_ptr, SCM data, SCM ra0, SCM lra, 
const char *what)
         }
     }
   while (k >= 0);
+
   return 1;
 }
 
diff --git a/test-suite/tests/arrays.test b/test-suite/tests/arrays.test
index a715922..c1407c9 100644
--- a/test-suite/tests/arrays.test
+++ b/test-suite/tests/arrays.test
@@ -328,7 +328,7 @@
   ;; This is a consequence of (array-contents? a #t) => #t.
   (pass-if "empty array"
     (let ((a (make-typed-array 'f64 2 0 0)))
-      (uniform-vector? (array-contents a))))
+      (f64vector? (array-contents a))))
 
   (pass-if "broadcast vector I"
     (let* ((a (make-array 0 4))


hooks/post-receive
-- 
GNU Guile



reply via email to

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