diff options
author | Jason Evans <jasone@canonware.com> | 2016-12-13 02:04:20 (GMT) |
---|---|---|
committer | Jason Evans <jasone@canonware.com> | 2016-12-13 02:16:51 (GMT) |
commit | d4c5aceb7cb5c5cf7a6dfd62e072c7dd12188998 (patch) | |
tree | 5fd6fe3a10fc41d056a9625599b9ba57669c1485 | |
parent | fbe30158184c28f00f109cf4b8870c554e996bab (diff) | |
download | jemalloc-d4c5aceb7cb5c5cf7a6dfd62e072c7dd12188998.zip jemalloc-d4c5aceb7cb5c5cf7a6dfd62e072c7dd12188998.tar.gz jemalloc-d4c5aceb7cb5c5cf7a6dfd62e072c7dd12188998.tar.bz2 |
Add a_type parameter to qr_{meld,split}().
-rw-r--r-- | include/jemalloc/internal/extent.h | 2 | ||||
-rw-r--r-- | include/jemalloc/internal/qr.h | 8 | ||||
-rw-r--r-- | test/unit/qr.c | 12 |
3 files changed, 11 insertions, 11 deletions
diff --git a/include/jemalloc/internal/extent.h b/include/jemalloc/internal/extent.h index 3c5573e..d5690c0 100644 --- a/include/jemalloc/internal/extent.h +++ b/include/jemalloc/internal/extent.h @@ -445,7 +445,7 @@ JEMALLOC_INLINE void extent_ring_insert(extent_t *sentinel, extent_t *extent) { - qr_meld(sentinel, extent, qr_link); + qr_meld(sentinel, extent, extent_t, qr_link); } JEMALLOC_INLINE void diff --git a/include/jemalloc/internal/qr.h b/include/jemalloc/internal/qr.h index 0fbaec2..3b5d027 100644 --- a/include/jemalloc/internal/qr.h +++ b/include/jemalloc/internal/qr.h @@ -31,8 +31,8 @@ struct { \ (a_qrelm)->a_field.qre_next = (a_qr); \ } while (0) -#define qr_meld(a_qr_a, a_qr_b, a_field) do { \ - void *t; \ +#define qr_meld(a_qr_a, a_qr_b, a_type, a_field) do { \ + a_type *t; \ (a_qr_a)->a_field.qre_prev->a_field.qre_next = (a_qr_b); \ (a_qr_b)->a_field.qre_prev->a_field.qre_next = (a_qr_a); \ t = (a_qr_a)->a_field.qre_prev; \ @@ -44,8 +44,8 @@ struct { \ * qr_meld() and qr_split() are functionally equivalent, so there's no need to * have two copies of the code. */ -#define qr_split(a_qr_a, a_qr_b, a_field) \ - qr_meld((a_qr_a), (a_qr_b), a_field) +#define qr_split(a_qr_a, a_qr_b, a_type, a_field) \ + qr_meld((a_qr_a), (a_qr_b), a_type, a_field) #define qr_remove(a_qr, a_field) do { \ (a_qr)->a_field.qre_prev->a_field.qre_next \ diff --git a/test/unit/qr.c b/test/unit/qr.c index a2a2d90..8b764e1 100644 --- a/test/unit/qr.c +++ b/test/unit/qr.c @@ -215,22 +215,22 @@ TEST_BEGIN(test_qr_meld_split) for (i = 1; i < NENTRIES; i++) qr_after_insert(&entries[i - 1], &entries[i], link); - qr_split(&entries[0], &entries[SPLIT_INDEX], link); + qr_split(&entries[0], &entries[SPLIT_INDEX], ring_t, link); test_split_entries(entries); - qr_meld(&entries[0], &entries[SPLIT_INDEX], link); + qr_meld(&entries[0], &entries[SPLIT_INDEX], ring_t, link); test_entries_ring(entries); - qr_meld(&entries[0], &entries[SPLIT_INDEX], link); + qr_meld(&entries[0], &entries[SPLIT_INDEX], ring_t, link); test_split_entries(entries); - qr_split(&entries[0], &entries[SPLIT_INDEX], link); + qr_split(&entries[0], &entries[SPLIT_INDEX], ring_t, link); test_entries_ring(entries); - qr_split(&entries[0], &entries[0], link); + qr_split(&entries[0], &entries[0], ring_t, link); test_entries_ring(entries); - qr_meld(&entries[0], &entries[0], link); + qr_meld(&entries[0], &entries[0], ring_t, link); test_entries_ring(entries); } TEST_END |