Lines Matching refs:_gc_prev
80 return (g->_gc_prev & PREV_MASK_COLLECTING) != 0;
86 g->_gc_prev &= ~PREV_MASK_COLLECTING;
92 return (Py_ssize_t)(g->_gc_prev >> _PyGC_PREV_SHIFT);
98 g->_gc_prev = (g->_gc_prev & ~_PyGC_PREV_MASK)
105 g->_gc_prev = (g->_gc_prev & _PyGC_PREV_MASK_FINALIZED)
116 g->_gc_prev -= 1 << _PyGC_PREV_SHIFT;
145 GEN.head._gc_prev = (uintptr_t)&GEN.head; \
179 _gc_prev values
182 Between collections, _gc_prev is used for doubly linked list.
184 Lowest two bits of _gc_prev are used for flags.
188 During a collection, _gc_prev is temporary used for gc_refs, and the gc list
189 is singly linked until _gc_prev is restored.
236 list->_gc_prev = (uintptr_t)list;
250 PyGC_Head *last = (PyGC_Head *)list->_gc_prev;
258 list->_gc_prev = (uintptr_t)node;
289 PyGC_Head *to_prev = (PyGC_Head*)list->_gc_prev;
292 list->_gc_prev = (uintptr_t)node;
375 assert((head->_gc_prev & PREV_MASK_COLLECTING) == 0);
401 assert((gc->_gc_prev & PREV_MASK_COLLECTING) == prev_value);
552 * This function restores _gc_prev pointer. young and unreachable are
588 // young->_gc_prev == gc. Don't do gc = GC_NEXT(gc) before!
621 unreachable->_gc_prev = (uintptr_t)gc;
625 // young->_gc_prev must be last element remained in the list.
626 young->_gc_prev = (uintptr_t)prev;
2261 g->_gc_prev = 0;