[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 25/27: Remove superfluous type check in bitvector->list
From: |
Daniel Llorens |
Subject: |
[Guile-commits] 25/27: Remove superfluous type check in bitvector->list |
Date: |
Mon, 9 Mar 2020 05:30:39 -0400 (EDT) |
lloda pushed a commit to branch wip-vector-cleanup
in repository guile.
commit 28b7ca2b05e4e11c67fb73fdef904e1068232707
Author: Daniel Llorens <address@hidden>
AuthorDate: Thu Feb 13 10:22:53 2020 +0100
Remove superfluous type check in bitvector->list
---
libguile/bitvectors.c | 23 ++++++++++-------------
libguile/bytevectors.c | 3 +--
2 files changed, 11 insertions(+), 15 deletions(-)
diff --git a/libguile/bitvectors.c b/libguile/bitvectors.c
index 3b305fe..90f1e05 100644
--- a/libguile/bitvectors.c
+++ b/libguile/bitvectors.c
@@ -36,7 +36,7 @@
#include "bitvectors.h"
/* FIXME move functions using these (operating on rank-1 bit arrays, not
- bitvectors) to a separate source file
+ bitvectors) to a separate source file.
*/
#include "arrays.h"
#include "srfi-4.h"
@@ -257,7 +257,7 @@ scm_c_bitvector_set_x (SCM vec, size_t idx, SCM val)
if (idx >= len)
scm_out_of_range (NULL, scm_from_size_t (idx));
- bitset_(bits, idx, scm_is_true (val));
+ bitset_ (bits, idx, scm_is_true (val));
}
SCM_DEFINE (scm_bitvector_set_x, "bitvector-set!", 3, 0, 0,
@@ -303,7 +303,7 @@ SCM_DEFINE (scm_bitvector_fill_x, "bitvector-fill!", 2, 0,
0,
{
size_t i;
for (i = 0; i < len; i++)
- bitset_(bits, off+i*inc, scm_is_true(val));
+ bitset_ (bits, off+i*inc, scm_is_true(val));
}
return SCM_UNSPECIFIED;
@@ -319,7 +319,7 @@ SCM_DEFINE (scm_list_to_bitvector, "list->bitvector", 1, 0,
0,
size_t bit_len = scm_to_size_t (scm_length (list));
SCM vec = scm_c_make_bitvector (bit_len, SCM_UNDEFINED);
size_t word_len = (bit_len+31)/32;
- uint32_t *bits = scm_bitvector_writable_elements (vec, NULL);
+ uint32_t *bits = BITVECTOR_BITS (vec);
size_t i, j;
for (i = 0; i < word_len && scm_is_pair (list); i++, bit_len -= 32)
@@ -478,8 +478,7 @@ SCM_DEFINE (scm_bit_position, "bit-position", 3, 0, 0,
size_t word_len = (len + 31) / 32;
uint32_t last_mask = ((uint32_t)-1) >> (32*word_len - len);
size_t first_word = first_bit / 32;
- uint32_t first_mask =
- ((uint32_t)-1) << (first_bit - 32*first_word);
+ uint32_t first_mask = ((uint32_t)-1) << (first_bit - 32*first_word);
uint32_t w;
for (size_t i = first_word; i < word_len; i++)
@@ -499,13 +498,11 @@ SCM_DEFINE (scm_bit_position, "bit-position", 3, 0, 0,
else
{
for (size_t i = first_bit; i < len; i++)
- {
- if (bit == bitref_ (bits, off+i*inc))
- {
- res = scm_from_size_t (i);
- break;
- }
- }
+ if (bit == bitref_ (bits, off+i*inc))
+ {
+ res = scm_from_size_t (i);
+ break;
+ }
}
return res;
diff --git a/libguile/bytevectors.c b/libguile/bytevectors.c
index 1c2b614..9585c5a 100644
--- a/libguile/bytevectors.c
+++ b/libguile/bytevectors.c
@@ -36,9 +36,8 @@
#include <gmp.h>
-/* FIXME want to remove this dependence out. See bitvectors.h */
+/* FIXME want to remove this dependence. See bitvectors.h */
#include "array-handle.h"
-#include "arrays.h"
#include "boolean.h"
#include "dynwind.h"
#include "extensions.h"
- [Guile-commits] 12/27: Remove generalized vector support for vector-move-right!, vector-move-left!, (continued)
- [Guile-commits] 12/27: Remove generalized vector support for vector-move-right!, vector-move-left!, Daniel Llorens, 2020/03/09
- [Guile-commits] 20/27: Update branch news file, Daniel Llorens, 2020/03/09
- [Guile-commits] 09/27: Simplify interfaces to scm_TYPEvector_(writable_)elements, Daniel Llorens, 2020/03/09
- [Guile-commits] 17/27: Pull generalized-vectors from under typed vectors, Daniel Llorens, 2020/03/09
- [Guile-commits] 11/27: Add lenp parameter back to scm_bitvector_(writable_)elements, Daniel Llorens, 2020/03/09
- [Guile-commits] 07/27: Simplify interfaces to scm_bitvector_elements and scm_bitvector_writable_elements, Daniel Llorens, 2020/03/09
- [Guile-commits] 13/27: Move bitvector functions using array_handle to libguile/array-handle.[ch], Daniel Llorens, 2020/03/09
- [Guile-commits] 14/27: Golf in srfi-4.h, Daniel Llorens, 2020/03/09
- [Guile-commits] 16/27: Pull generalized-vectors from under bitvector/string/vector, Daniel Llorens, 2020/03/09
- [Guile-commits] 15/27: Rewrite vector-copy! using memmove, Daniel Llorens, 2020/03/09
- [Guile-commits] 25/27: Remove superfluous type check in bitvector->list,
Daniel Llorens <=
- [Guile-commits] 23/27: Remove 'contiguous' flag in arrays, Daniel Llorens, 2020/03/09
- [Guile-commits] 27/27: Reuse SCM_ASSERT_RANGE in scm_c_vector_ref, scm_c_vector_set_x, Daniel Llorens, 2020/03/09
- [Guile-commits] 21/27: Merge generalized-arrays.[ch] in arrays.[ch], Daniel Llorens, 2020/03/09
- [Guile-commits] 05/27: Simple vectors are just vectors, Daniel Llorens, 2020/03/09
- [Guile-commits] 04/27: Remove the unused argument from scm_array_p, Daniel Llorens, 2020/03/09
- [Guile-commits] 18/27: Pull generalized-vectors from under bytevectors, Daniel Llorens, 2020/03/09
- [Guile-commits] 22/27: Remove scm_from_contiguous_typed_array, Daniel Llorens, 2020/03/09
- [Guile-commits] 24/27: Move uniform-array->bytevector from (rnrs bytevectors) to core, Daniel Llorens, 2020/03/09
- [Guile-commits] 26/27: Simplify vector constructor, Daniel Llorens, 2020/03/09
- [Guile-commits] 19/27: Remove generalized-vectors.[hc], Daniel Llorens, 2020/03/09