summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Evans <jasone@canonware.com>2016-12-13 02:04:20 (GMT)
committerJason Evans <jasone@canonware.com>2016-12-13 02:16:51 (GMT)
commitd4c5aceb7cb5c5cf7a6dfd62e072c7dd12188998 (patch)
tree5fd6fe3a10fc41d056a9625599b9ba57669c1485
parentfbe30158184c28f00f109cf4b8870c554e996bab (diff)
downloadjemalloc-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.h2
-rw-r--r--include/jemalloc/internal/qr.h8
-rw-r--r--test/unit/qr.c12
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