Lines Matching refs:Cur
249 static Field *getNext(Field *Cur) { in performOptimizedStructLayout()
250 return static_cast<Field *>(Cur->Scratch); in performOptimizedStructLayout()
294 auto spliceFromQueue = [&](AlignmentQueue *Queue, Field *Last, Field *Cur) { in performOptimizedStructLayout() argument
295 assert(Last ? Queue->getNext(Last) == Cur : Queue->Head == Cur); in performOptimizedStructLayout()
300 Last->Scratch = Cur->Scratch; in performOptimizedStructLayout()
305 if (!Cur->Scratch) in performOptimizedStructLayout()
310 if (auto NewHead = Queue->getNext(Cur)) in performOptimizedStructLayout()
329 auto addToLayout = [&](AlignmentQueue *Queue, Field *Last, Field *Cur, in performOptimizedStructLayout()
331 assert(Offset == alignTo(LastEnd, Cur->Alignment)); in performOptimizedStructLayout()
334 spliceFromQueue(Queue, Last, Cur); in performOptimizedStructLayout()
337 Layout.push_back(*Cur); in performOptimizedStructLayout()
362 for (Field *Cur = Queue->Head, *Last = nullptr; true; in performOptimizedStructLayout() local
363 Last = Cur, Cur = Queue->getNext(Cur)) { in performOptimizedStructLayout()
364 assert(Cur && "didn't find a match in queue despite its MinSize"); in performOptimizedStructLayout()
365 if (Cur->Size <= MaxViableSize) in performOptimizedStructLayout()
366 return addToLayout(Queue, Last, Cur, StartOffset); in performOptimizedStructLayout()