]> git.saurik.com Git - redis.git/blob - deps/jemalloc.orig/include/jemalloc/internal/extent.h
6fe9702b5f6ad47cfc0a466562006049017c2487
[redis.git] / deps / jemalloc.orig / include / jemalloc / internal / extent.h
1 /******************************************************************************/
2 #ifdef JEMALLOC_H_TYPES
3
4 typedef struct extent_node_s extent_node_t;
5
6 #endif /* JEMALLOC_H_TYPES */
7 /******************************************************************************/
8 #ifdef JEMALLOC_H_STRUCTS
9
10 /* Tree of extents. */
11 struct extent_node_s {
12 #if (defined(JEMALLOC_SWAP) || defined(JEMALLOC_DSS))
13 /* Linkage for the size/address-ordered tree. */
14 rb_node(extent_node_t) link_szad;
15 #endif
16
17 /* Linkage for the address-ordered tree. */
18 rb_node(extent_node_t) link_ad;
19
20 #ifdef JEMALLOC_PROF
21 /* Profile counters, used for huge objects. */
22 prof_ctx_t *prof_ctx;
23 #endif
24
25 /* Pointer to the extent that this tree node is responsible for. */
26 void *addr;
27
28 /* Total region size. */
29 size_t size;
30 };
31 typedef rb_tree(extent_node_t) extent_tree_t;
32
33 #endif /* JEMALLOC_H_STRUCTS */
34 /******************************************************************************/
35 #ifdef JEMALLOC_H_EXTERNS
36
37 #if (defined(JEMALLOC_SWAP) || defined(JEMALLOC_DSS))
38 rb_proto(, extent_tree_szad_, extent_tree_t, extent_node_t)
39 #endif
40
41 rb_proto(, extent_tree_ad_, extent_tree_t, extent_node_t)
42
43 #endif /* JEMALLOC_H_EXTERNS */
44 /******************************************************************************/
45 #ifdef JEMALLOC_H_INLINES
46
47 #endif /* JEMALLOC_H_INLINES */
48 /******************************************************************************/
49