Home | History | Annotate | Download | only in alloc

Lines Matching full:refs

40 #define heapRefTableIsFull(refs) \
42 const HeapRefTable *HRTIF_refs = (refs); \
43 dvmIsReferenceTableFull(refs); \
46 bool dvmHeapInitHeapRefTable(HeapRefTable *refs, size_t nelems)
48 memset(refs, 0, sizeof(*refs));
49 return dvmInitReferenceTable(refs, nelems, INT_MAX);
54 void dvmHeapFreeHeapRefTable(HeapRefTable *refs)
56 dvmClearReferenceTable(refs);
81 while (table != NULL && heapRefTableIsFull(&table->refs)) {
110 if (!dvmHeapInitHeapRefTable(&table->refs, kLargeHeapRefTableNElems)) {
126 assert(!heapRefTableIsFull(&table->refs));
127 *table->refs.nextEntry++ = ref;
132 bool dvmHeapAddTableToLargeTable(LargeHeapRefTable **tableP, HeapRefTable *refs)
144 table->refs = *refs;
160 dvmHeapFreeHeapRefTable(&table->refs);
177 HeapRefTable *refs = &table->refs;
181 assert(dvmReferenceTableEntries(refs) != 0);
185 obj = *--refs->nextEntry;
190 if (refs->nextEntry == refs->table) {
192 dvmClearReferenceTable(refs);
205 ref = table->refs.table;
206 lastRef = table->refs.nextEntry;