guile-commits
[Top][All Lists]
Advanced

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

[Guile-commits] GNU Guile branch, lloda-array-cleanup, created. v2.1.0-6


From: Andy Wingo
Subject: [Guile-commits] GNU Guile branch, lloda-array-cleanup, created. v2.1.0-670-g257e163
Date: Tue, 28 Jan 2014 08:07:28 +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=257e163c7521acd62fc806c6f803a04e477b40b0

The branch, lloda-array-cleanup has been created
        at  257e163c7521acd62fc806c6f803a04e477b40b0 (commit)

- Log -----------------------------------------------------------------
commit 257e163c7521acd62fc806c6f803a04e477b40b0
Author: Daniel Llorens <address@hidden>
Date:   Wed May 22 13:36:24 2013 +0200

    Arrays are not an array implementation
    
    * libguile/bitvectors.c: match other uses of SCM_ARRAY_IMPLEMENTATION.
    * libguile/generalized-arrays.c
      (scm_is_array): don't use scm_i_array_implementation_for_obj on arrays.
      (scm_is_typed_array): idem. Use impl->get_handle instead of
      scm_array_get_handle to avoid calling scm_i_array_implementation_for_obj
      twice.
    * libguile/arrays.c: remove SCM_ARRAY_IMPLEMENTATION on scm_tc7_array type.

commit 96f733226313b797e5f38948dc8216112f54f756
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 f6ec824401ab46e74be358130c4d4d2bd209bbc4
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 dcc91f931cb63145fee7729a718245c658d8094d
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 d0b47b494682ebe36f8a93dbc96afe6cae2c5e13
Author: Daniel Llorens <address@hidden>
Date:   Mon Apr 29 15:37:52 2013 +0200

    Rename scm_t_array_handle.array to .root
    
    Globally rename this field (after shared-array-root), since it's not an 
array.

commit 99c0a58a2fa392ac14017da8874fbdbfd2f05900
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 d2053db7d8f6134f50bbd5102ddde7b72010dd97
Author: Daniel Llorens <address@hidden>
Date:   Fri Apr 26 17:59:45 2013 +0200

    Bounds error in vector_handle_ref/set is implementation error
    
    * libguile/vectors.c: bounds are already checked unless impl is called
      directly, so don't check again.
    * libguile/strings.c, libguile/bitvectors.c: fix comments.

commit 86263a20cd3f7ec1ade740c19ac47767e083d058
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 ce6fce6af3c405b6725664bf712dc5a0ec926a3c
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 3ee4c7645386d56e2bfd9d94aa13d5c7ccff8509
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 2bd96d9ecd73b71b3666c7d1931ec3e33e5f49fb
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 cdd7cc9e9b3750a759ab442249a6f004a503fba5
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 7c78a99f80642c0340faaa3ee45a07637f2bf351
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 ebe19774eaa2b3d3bb5610f4ba3fdbf9a87ca8c8
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 aba084e95e9103843bfbdbd0072c70335529fbb8
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 1c22510af4a9e771ef2edf4759ad56af3d27feb8
Author: Daniel Llorens <address@hidden>
Date:   Mon Apr 22 09:02:32 2013 +0200

    Inline ASET in array-index-map! for rank 1 arguments
    
    * libguile/array-map.c: (scm_array_index_map_x): branch to special case on
        rank 1, instead of !SCM_I_ARRAYP (ra). Inline ASET in this case.

commit b713626073eba62ef233bcff21812efe64350a25
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 d4f63dacdd9f3f7c41217988c084ce6ca6432d9f
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.

commit 4552a0c4068872ad3bf5d8ed27610de7706b3b51
Author: Daniel Llorens <address@hidden>
Date:   Fri Apr 19 14:53:34 2013 +0200

    Raw pointer loop in array-copy! for vector/vector case
    
    This special case improves
    
    (define a (make-array 1. 1000000 10))
    (define b (make-array *unspecified* 1000000 10))
    (define c (transpose-array (make-array *unspecified* 10 1000000) 1 0))
    ,time (array-copy! a b)
    ,time (array-copy! a c)
    
    from 0.041598s / 0.072561 to 0.012164s / 0.041886s on a i7-3930K.
    
    * libguile/array-map.c: (racp): if both src and dst are on vectors, use
      the element pointers to do the copy.

commit 8190effae22e1ad1086fb0cae429ae42ff6f761d
Author: Daniel Llorens <address@hidden>
Date:   Fri Apr 19 13:43:30 2013 +0200

    Have array impl->vref, vset take SCM, not handles
    
    * libguile/array-handle.h
      - scm_i_t_array_ref, scm_i_t_array_set take SCM.
      - scm_array_handle_ref, scm_array_handle_set: pass h->array.
    * libguile/array-map.c
      - AREF, ASET, rafill, racp, ramap, rafe: pass storage vector SCM
        instead of handle.
    * libguile/bitvector.c
      - bitvector_handle_ref, bitvector_handle_set_x: take bitvector arg.
    * libguile/bytevectors.c
      - bv_handle_ref, bv_handle_set_x: take bytevector arg.
      - scm_i_print_bytevectors: don't use array handles.
    * libguile/deprecated.c
      - scm_generalized_vector_to_list: pass h.array.
    * libguile/strings.c
      - string_handle_ref, string_handle_set: take string arg.
    * libguile/uniform.c
      - scm_c_uniform_vector_ref, scm_c_uniform_vector_set_x: pass h.array.
    * libguile/vectors.c
      - vector_handle_ref, vector_handle_set: take vector arg.

commit f1fcf88b1f2c7955bda03b5243b904ba16f79b71
Author: Daniel Llorens <address@hidden>
Date:   Fri Apr 19 12:57:13 2013 +0200

    Fix array map functions with empty arguments
    
    * libguile/array-map.c
      - scm_ra_matchp: look for empty axes and return new case 5 if so. Use
        array handles to remove the SCM_I_ARRAYP / not branch.
      - scm_ramapc: Heed case 5.
    * test-suite/tests/ramap.test
      - test empty arguments for array-copy! and array-for-each. Note those
        that failed in 2.0.9.

commit e26994b9e9ab075e357d71d4e06fc2a09f7f243b
Author: Daniel Llorens <address@hidden>
Date:   Fri Apr 19 10:42:40 2013 +0200

    Fix empty array bug in array-index-map!
    
    * libguile/array-map.c: (scm_array_index_map_x): bail out if any one of the
      axes is empty.
    * test-suite/tests/ramap.test: add tests for empty array-case of
      array-index-map!. The 'f64 case with not-last emtpy axis is broken in 
2.0.9.

commit 3e226ece5fc6f87cac2d02948177cafe61977bc4
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 17 17:29:36 2013 +0200

    Avoid using array_handle fields in impl->vref/vset
    
    * libguile/bytevectors.c: (bv_handle_set_x, bv_handle_ref): get length
      and element type fields from the bytevector, not from the handle.
    * libguile/vectors.c: (vector_handle_set, vector_handle_ref): get length
      from the vector, not from the handle.

commit 95cd688421175870b22f71409fb4ef24124d68d0
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 17 15:12:15 2013 +0200

    Remove undocumented casting behavior in srfi4 vector_elements
    
    * libguile/srfi-4.c: scm_##tag##vector_writable_elements: if the argument's
      type doesn't match the tag, throw type error.

commit 9cbd17fc50d667263cb754de7cb9135c69be9d9d
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 17 14:33:40 2013 +0200

    Test that typed-array? returns #f with non-array argument
    
    * test-suite/tests/arrays.test: ditto.

commit ecd6c045272e9dfdd111651521bf2894a0fcfda5
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 17 14:01:54 2013 +0200

    Avoid array API in make-srfi-4-vector
    
    * libguile/bytevector.h: publish SCM_BYTEVECTOR_TYPE_SIZE, 
bytevector_ref_fns
      and bytevector_set_fns from libguile/bytevector.c.
    * libguile/bytevector.c: bv_handle_ref, bv_handle_set: prefer
      SCM_BYTEVECTOR_TYPE_SIZE to scm_array_handle_uniform_element_size.
    * libguile/srfi-4.c: scm_make_srfi_4_vector: don't use array handles.

commit c9b62794e00a835aa8fae222b8c4d795f2d2fdf1
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 17 10:19:26 2013 +0200

    Replace SCM_IMP in array-map.c
    
    * libguile/array-map.c
      - scm_ramapc: check scm_array_contents with scm_is_false.

commit f5b2888e83b875c15c88764a9c2e7fa525d7c489
Author: Daniel Llorens <address@hidden>
Date:   Tue Apr 16 18:19:57 2013 +0200

    Fix comment in scm_array_get_handle
    
    libguile/array-handle.c: (scm_array_get_handle): comment applies to either 
branch.

commit 3e5f10e8a2fd838fd48cbb36194b833073a6b12b
Author: Daniel Llorens <address@hidden>
Date:   Mon Apr 15 13:44:10 2013 +0200

    Don't bother with array handle in scm_c_array_rank
    
    * libguile/generalized-arrays.c: (scm_c_array_rank): compute rank directly 
from
      object.

commit a70333d2968ef945db2188f1720f52ff9b0e54a5
Author: Daniel Llorens <address@hidden>
Date:   Fri Apr 12 17:50:09 2013 +0200

    Use underlying vector implementation directly in array handles
    
    * libguile/array-handle.c
      - scm_array_get_handle: if the object is an array, point impl to
        the underlying vector instead of array impl, then fix the axes. Avoid
        calling scm_i_array_implementation_for_obj twice.
    * libguile/arrays.c
      - array_handle_ref, array_handle_set, array_get_handle: remove.
    * libguile/bitvectors.c, libguile/bytevectors.c, libguile/strings.c,
      libguile/vectors.c: fix base = 0 in the array handle.
    * libguile/vectors.c: (vector_handle_set, vector_handle_ref): do not
      use h->dims.

commit ba7e018b614f0964961dd14c877646d385da3a31
Author: Daniel Llorens <address@hidden>
Date:   Fri Apr 12 15:04:52 2013 +0200

    Match uniform_vector_elements with vector_elements
    
    * libguile/vectors.c
      - (scm_vector_writable_elements): allow any non-uniform rank 1 array,
        after the doc. Match the implementation with 
scm_uniform_vector_elements.
      - (scm_vector_elements): after the above.
    * libguile/uniform.c
      - (scm_uniform_vector_writable_elements): ditto for uniform rank 1 arrays.
    * libguile/sort.c
      - revert the changes in 7a6fd9, except for the argument type test; allow
        what scm_vector_(writable_)elements allows.

commit 766f399d3b1a93e5c53768e5033de225b21aa6e1
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 11 22:49:22 2013 +0200

    Fix rank-1 indirection in array-map.c
    
    * array-map.c: (AREF, ASET): fix buggy indirection carried over
      from old generalized_vector-ref/set!.

commit d848953d8c00209b617e692e044fe7dec39fd128
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 11 19:38:19 2013 +0200

    Online documentation for vector-ref, vector-set!
    
    * libguile/vectors.c: (scm_vector_ref, scm_vector_set!): embed the
      comments as documentation.

commit e1df3b3ea7e4e4b25ea1b6a698fdf8694c0b082c
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 11 19:32:23 2013 +0200

    vector-length rejects non vector? arg
    
    * libguile/vectors.c
      - scm_c_vector_length:  error if SCM_I_IS_VECTOR (v) fails.
      - scm_vector_length: Documentation for vector-length.

commit fa156321d4946b01a7590e1a154425ab6d474dba
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 11 18:28:19 2013 +0200

    vector-ref, vector-set! reject non vector? args
    
    * libguile/vectors.c: (scm_c_vector_ref, scm_c_vector_set_x):
      throw type error if v is not vector?.

commit 70a63479ad8498a1cac085247361b3b5ebd8ea06
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 11 18:11:35 2013 +0200

    Identify scm_is_vector with scm_is_simple_vector
    
    This patch fixes the bug (vector-ref address@hidden(1 2 3) 1) => 2.
    
    * libguile/vectors.c: (scm_is_vector): just as scm_is_simple_vector.
    * libguile/filesys.c, libguile/random.c, libguile/stime.c, libguile/trees.c,
      libguile/validate.h: use scm_is_vector instead of scm_is_simple_vector.
    * libguile/sort.c
      - scm_restricted_vector_sort_x: use scm_array_handle_writable_elements
        instead of scm_vector_writable_elements, to work with non-vector
        rank-1 array objects.
      - scm_sort_x: check for scm_is_array instead of scm_is_vector. Rank
        check is in restricted_vector_sort_x.
      - scm_sort: ditto.
      - scm_stable_sort_x: like scm_restricted_vector_sort_x.
      - scm_stable_sort: like scm_sort.
    * test-suite/tests/arrays.test: fix header.
    * test-suite/tests/random.test: new coverage test covering
      random:normal-vector!
    * test-suite/Makefile.am: include random.test in make check.

commit 413c7156795cedb453ebf68c3dd6fd376a64a12b
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 11 13:10:08 2013 +0200

    For uniform vectors SCM_I_ARRAYP can't be true
    
    This fixes an inconsistency where uniform-vector? of a shared array could
    be true but -ref operations failed to account correctly for lbnd.
    
    * libguile/uniform.c
      - scm_is_uniform_vector: SCM_I_ARRAYP disqualifies obj as uniform vector.
      - scm_c_uniform_vector_length: lbnd is known 0, so don't use it.
      - scm_c_uniform_vector_ref: lbnd/base/inc are known to be 0/0/1.
      - scm_c_uniform_vector_set_x!: idem.
      - scm_uniform_vector_writable_elements: check uvec's type.
    * test-suite/tests/arrays.test
      - group the exception types at the top.
      - check that uniform-vector functions do not accept general arrays.

commit 943f690a308f917fbac994fc1dd14d339879d6d4
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 11 13:03:45 2013 +0200

    Fix bad uses of base and lbnd on rank 1 arrays
    
     * libguile/array-map.c
       - rafill, ramap, rafe, racp: object from SCM_I_ARRAY_V always
         has base 0, lbnd 0 and inc 1; make use of this.
     * libguile/arrays.c
       - array_handle_ref, array_handle_set: idem.
       - array_get_handle: sanity check.
     * libguile/generalized-vectors.c
       - scm_c_generalized_vector_ref, scm_c_generalized_vector_set_x:
         pos should be base when idx is lbnd. Furthermore, pos should be signed 
and
         have its overflow checked; do this by handling the job to
         scm_c_array_ref_1, scm_c_array_set_1_x.
     * libguile/generalized-vectors.h
       - fix prototypes.

commit 499a9804c784a92a1dbe51cd3fb45847c29a1c7d
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 10 15:28:52 2013 +0200

    Reorder arrays.test
    
    * test-suite/tests/arrays.test: dependence reordering: first sanity, then
      make-array, then array-equal?, then make-shared-array, shared-array-root,
      then the rest, many of which use make-shared-array.

commit b8ff37f5ea4dd762b9b136b6848aba96189b242f
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 10 15:11:33 2013 +0200

    Don't use scm_is_generalized_vector in transpose-array
    
    * libguile/arrays.c (scm_transpose_array)
      - Use scm_c_array_rank(), which contains an implicit is_array test.
      - Handle the rank 0 case.
    * test-suite/tests/arrays.test
      - Add test for rank 0 case.
      - Add failure test for non array argument.

commit 82c481dd116d68da74920e4a0598b8a39f3a3b51
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 10 14:53:10 2013 +0200

    Tests for transpose-array
    
    * test-suite/tests/arrays.test: test transpose-array for ranks 1, 2, 3.

commit aaeb4e5bfba2782215eb408fe68874bc1fdbf471
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 10 13:48:13 2013 +0200

    Don't use scm_is_generalized_vector in shared-array-root
    
    * libguile/arrays.c: (scm_shared_array_root): replace check for
      scm_is_generalized_vector.

commit e0c58a504224b48c44161387aabd036a3ce4a1dd
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 10 13:45:05 2013 +0200

    Tests for shared-array-root
    
    * test-suite/tests/arrays.test: check shared-array-root against
      make-shared-array, array-contents.

commit 951ce0f413269f14ed7f763c40b2c343fe73eb8c
Author: Daniel Llorens <address@hidden>
Date:   Wed Apr 10 01:07:02 2013 +0200

    Remove unnecessary conditions in array constructors
    
    * libguile/arrays.c: (scm_make_type_array, scm_from_contigous_typed_array,
      scm_from_contigous_array): Remove conditions known to be true.

commit 0362859c2877d09dd966f526aa0ddc4b858c5bb3
Author: Daniel Llorens <address@hidden>
Date:   Tue Apr 9 18:27:29 2013 +0200

    Remove generalized-vectors.h includes
    
    * libguile/srfi-4.c, libguile/uniform.h: ditto.

commit 000d4fb3a51f223288a6bfd02ee4cd7b5460f186
Author: Daniel Llorens <address@hidden>
Date:   Tue Apr 9 18:17:21 2013 +0200

    Replace scm_c_generalized_vector_length in arrays.c
    
    * libguile/arrays.c: (scm_array_contents, scm_make_shared_array):
      arrays are known of rank 1 so replace by scm_c_array_length.

commit 5a4f40f9036d873b4f0766da1bddc6a798e1d801
Author: Daniel Llorens <address@hidden>
Date:   Tue Apr 9 18:09:49 2013 +0200

    Replace scm_c_generalized_vector_length in random.c
    
    * libguile/random.c: (random:solid-sphere!): array is of known
      rank 1, so use scm_c_array_length() instead.

commit b370eedc5edcc88386ffda3d78e9351e783a75a0
Author: Daniel Llorens <address@hidden>
Date:   Wed May 8 01:54:29 2013 +0200

    Don't use generalized-vector in array-map.c (II)
    
    * libguile/array-map.c
      - replace scm_is_generalized_vector by scm_is_array && !SCM_I_ARRAY_P.
      - replace scm_c_generalized_vector_length by scm_c_array_length.
      - remove header.

commit ad93aa0195db29e30d21e4b6143b3a5be0234a37
Author: Daniel Llorens <address@hidden>
Date:   Mon Apr 8 13:34:41 2013 +0200

    Don't use generalized-vector in array-map.c (I)
    
    * array-map.c: (AREF, ASET): new internal functions replace
      scm_c_generalized_vector_ref/set. These remove a redundant check for
      rank in the generalized_vector set.

commit 4569bbf7f6b930f49758023f15ab1b9020036db9
Author: Daniel Llorens <address@hidden>
Date:   Mon Apr 8 13:13:21 2013 +0200

    Don't use generalized-vector functions in uniform.c
    
    * libguile/uniform.c
      - (scm_is_uniform_vector): replace scm_is_generalized_vector and
        scm_generalized_vector_get_handle by scm_is_array and manual rank check.
      - (scm_c_uniform_vector_length): inline length computation. This
        removes a redundant rank check.
      - (scm_c_uniform_vector_ref): inline impl->vref use. This removes
        a redundant rank check.
      - (scm_c_uniform_vector_set): inline impl->vset use. This removes
        a redundant rank check.
      - (scm_uniform_vector_writable_elements): replace
        scm_generalized_vector_get_handle by scm_array_get_handle.
    
    * test-suite/test/arrays.test
      - rename uniform-vector-ref block to uniform-vector.
      - exercise uniform-vector-length and shared arrays remaining uniform.

commit 07f4a9151eda892e391800b5d53d4c50f93feb4e
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 18 15:12:09 2013 +0200

    Inline generalized-vector calls in array_handle_ref/set
    
    * libguile/arrays.c: (array-handle-ref, array-handle-set): Ditto.

commit 233fd7c3607442e264a56fa68db372c130aedd38
Author: Daniel Llorens <address@hidden>
Date:   Thu Apr 18 15:10:29 2013 +0200

    Tests for array-copy!, empty case
    
    * test-suite/tests/ramap.test: test array-copy! with empty destination.
      Fix uses of constant array as destination.

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


hooks/post-receive
-- 
GNU Guile



reply via email to

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