Lines Matching defs:list

771    scheme (ex.: ints use a simple free list). This is also the place where
777 [ int ] [ dict ] [ list ] ... [ string ] Python core |
838 * this, we partition each free list in pools and we share dynamically the
1004 block *freeblock; /* pool's free list head */
1035 /* Singly-linked list of available pools. */
1040 * arena_objects in the singly-linked `unused_arena_objects` list.
1045 * doubly-linked `usable_arenas` list, which is maintained in
1071 This is involved. For an index i, usedpools[i+i] is the header for a list of
1086 The pool holds blocks of a fixed size, and is in the circular list headed
1094 On transition to full, a pool is unlinked from its usedpools[] list.
1098 Then it's linked in at the front of the appropriate usedpools[] list, so
1102 On transition to empty, a pool is unlinked from its usedpools[] list,
1103 and linked to the front of its arena_object's singly-linked freepools list,
1106 an empty list in usedpools[], it takes the first pool off of freepools.
1114 the start of a singly-linked list of free blocks within the pool. When a
1115 block is freed, it's inserted at the front of its pool's freeblock list. Note
1119 one-block list holding the second such block. This is consistent with that
1125 points to the end of the free list before we've carved the entire pool into
1153 circular list is empty).
1209 This is a singly-linked list of the arena_objects that are currently not
1211 head of the list in new_arena(), and are pushed on the head of the list in
1213 is on this list if and only if its .address member is 0.
1217 This is a doubly-linked list of the arena_objects associated with arenas
1219 or have not been used before. The list is sorted to have the most-
1227 currently in use isn't on either list.
1247 /* The head of the singly-linked, NULL-terminated list of available
1252 /* The head of the doubly-linked, NULL-terminated at each end, list of
1624 /* Put the new arenas on the unused_arena_objects list. */
1636 /* Take the next available arena object off the head of the list. */
1836 * usable_arenas list. However, if the arena becomes wholly allocated,
1917 * and free list are already initialized.
1925 * Initialize the pool header, set up the free list to
1973 * Pick up the head block of its free list.
1980 // Reached the end of the free list, try to extend it.
2056 * list, and pool->prevpool isn't used there.
2083 * arena in the list, keep it to avoid thrashing:
2084 * keeping one wholly free arena in the list avoids
2089 * add the arena back to the `usable_arenas` list.
2147 * currently on the usable_arenas list.
2163 * the list sorted. The list is kept sorted so that
2178 /* If ao were the only arena in the list, the last block would have
2183 /* Case 3: We have to move the arena towards the end of the list,
2189 /* ao isn't at the head of the list */
2194 /* ao is at the head of the list */
2234 /* Link p to the start of the pool's freeblock list. Since
2236 * wasn't empty (so it's already in a usedpools[] list, or
2237 * was full and is in no list -- it's not in the freeblocks
2238 * list in any case).
2247 /* Pool was full, so doesn't currently live in any list:
2248 * link it to the front of the appropriate usedpools[] list.
2258 * and the pool is in a usedpools[] list.
2930 /* Is target in the list? The list is traversed via the nextpool pointers.
2931 * The list may be NULL-terminated, or circular. Return 1 if target is in
2932 * list, else 0.
2935 pool_is_in_list(const poolp target, poolp list)
2937 poolp origlist = list;
2939 if (list == NULL)
2942 if (target == list)
2944 list = list->nextpool;
2945 } while (list != NULL && list != origlist);