Lines Matching refs:ref
972 static bool isReferenceEnqueuable(const Object *ref)
976 queue = dvmGetFieldObject(ref, gDvm.offJavaLangRefReference_queue);
977 queueNext = dvmGetFieldObject(ref, gDvm.offJavaLangRefReference_queueNext);
997 static void enqueueReference(Object *ref)
999 assert(ref != NULL);
1000 assert(dvmGetFieldObject(ref, gDvm.offJavaLangRefReference_queue) != NULL);
1001 assert(dvmGetFieldObject(ref, gDvm.offJavaLangRefReference_queueNext) == NULL);
1002 if (!dvmHeapAddRefToLargeTable(&gDvm.gcHeap->referenceOperations, ref)) {
1028 Object *ref = *list;
1029 JValue *field = dvmFieldPtr(ref, referentOffset);
1031 *list = dvmGetFieldObject(ref, queueNextOffset);
1032 dvmSetFieldObject(ref, queueNextOffset, NULL);
1040 clearReference(ref);
1041 if (isReferenceEnqueuable(ref)) {
1042 enqueueReference(ref);
1063 Object *ref;
1073 ref = *list;
1074 while (ref != NULL) {
1075 JValue *field = dvmFieldPtr(ref, referentOffset);
1077 next = dvmGetFieldObject(ref, queueNextOffset);
1094 dvmSetFieldObject(ref, queueNextOffset, NULL);
1099 prev = ref;
1101 ref = next;
1114 Object **ref;
1144 gapRef = ref = finRefs->refs.table;
1146 while (ref < lastRef) {
1147 if (fromSpaceContains(*ref)) {
1148 if (!dvmHeapAddToHeapRefTable(&newPendingRefs, *ref)) {
1157 /* This ref is black, so will remain on finalizableRefs.
1162 *gapRef++ = *ref;
1169 ref++;
1199 ref = newPendingRefs.table;
1201 assert(ref < lastRef);
1203 while (ref < lastRef) {
1204 scavengeReference(ref);
1205 ref++;
1266 Object **ref = (Object **)((u1 *)obj + offset);
1267 scavengeReference(ref);
1275 Object **ref = (Object **)((u1 *)obj + offset);
1276 scavengeReference(ref);
1509 Object **ref = table->refs.table;
1510 for (; ref < table->refs.nextEntry; ++ref) {
1511 scavengeReference(ref);
1671 LOGE("PGC: invalid ref in reg %d: 0x%08x",
1688 LOGD("PGC: ignoring valid ref in reg %d: 0x%08x",