Lines Matching refs:Color
119 bool OverlapWithAssignments(LiveInterval *li, int Color) const;
253 StackSlotColoring::OverlapWithAssignments(LiveInterval *li, int Color) const { in OverlapWithAssignments()
254 const SmallVectorImpl<LiveInterval *> &OtherLIs = Assignments[Color]; in OverlapWithAssignments()
265 int Color = -1; in ColorSlot() local
273 Color = UsedColors[StackID].find_first(); in ColorSlot()
274 while (Color != -1) { in ColorSlot()
275 if (!OverlapWithAssignments(li, Color)) { in ColorSlot()
280 Color = UsedColors[StackID].find_next(Color); in ColorSlot()
284 if (Color != -1 && MFI->getStackID(Color) != MFI->getStackID(FI)) { in ColorSlot()
293 Color = NextColors[StackID]; in ColorSlot()
294 UsedColors[StackID].set(Color); in ColorSlot()
298 assert(MFI->getStackID(Color) == MFI->getStackID(FI)); in ColorSlot()
301 Assignments[Color].push_back(li); in ColorSlot()
302 LLVM_DEBUG(dbgs() << "Assigning fi#" << FI << " to fi#" << Color << "\n"); in ColorSlot()
308 if (!Share || Alignment > MFI->getObjectAlign(Color)) in ColorSlot()
309 MFI->setObjectAlignment(Color, Alignment); in ColorSlot()
311 if (!Share || Size > MFI->getObjectSize(Color)) in ColorSlot()
312 MFI->setObjectSize(Color, Size); in ColorSlot()
313 return Color; in ColorSlot()