Lines Matching refs:src
187 static bool FindNextSpace(LocalMemSpace *src, LocalMemSpace **dst, bool isMutable, GCTaskId *id)
191 if (*dst == src)
201 if (lSpace == src)
204 ASSERT(!isMutable || src->isMutable);
205 *dst = src;
219 isMutable ? "mutable" : "immutable", src, lSpace);
235 LocalMemSpace *src = *i;
237 if (src->spaceOwner == 0)
240 if (src->spaceOwner == 0)
241 src->spaceOwner = id;
244 else if (src->spaceOwner != id)
248 Log("GC: Copy: copying area %p (thread %p) %s \n", src, id, src->spaceTypeString());
253 POLYUNSIGNED bitno = src->wordNo(src->fullGCLowerLimit);
257 src->fullGCLowerLimit = src->top;
259 // src->highest is the bit position that corresponds to the top of
261 POLYUNSIGNED highest = src->wordNo(src->top);
268 bitno += src->bitmap.CountZeroBits(bitno, highest - bitno);
273 PolyWord *old = src->wordAddr(bitno); /* Old object address */
292 PolyWord *newp = FindFreeAndAllocate(destSpace, (src == destSpace) ? bitno : 0, n);
293 if (newp == 0 && src != destSpace)
297 if (FindNextSpace(src, isMutable ? &mutableDest : &immutableDest, isMutable, id))
308 // Update src->upperAllocPtr, so the old object doesn't get trampled.
309 if (old < src->upperAllocPtr)
310 src->upperAllocPtr = old;
319 if (! src->isMutable || src->i_marked == 0)
334 if (mutableDest == src)
336 if (immutableDest == src)