Lines Matching refs:Entries

280   if (Entries.empty() || Entries.back().End <= begin) {  in addEntry()
281 Entries.push_back({begin, end, type}); in addEntry()
287 size_t index = Entries.size() - 1; in addEntry()
289 if (Entries[index - 1].End <= begin) break; in addEntry()
295 if (Entries[index].Begin >= end) { in addEntry()
299 Entries.insert(Entries.begin() + index, {begin, end, type}); in addEntry()
308 if (Entries[index].Begin == begin && Entries[index].End == end) { in addEntry()
310 if (Entries[index].Type == type) return; in addEntry()
313 if (Entries[index].Type == nullptr) { in addEntry()
316 Entries[index].Type = nullptr; in addEntry()
322 if (auto entryType = getCommonType(Entries[index].Type, type)) { in addEntry()
323 Entries[index].Type = entryType; in addEntry()
328 Entries[index].Type = nullptr; in addEntry()
351 if (Entries[index].Type && Entries[index].Type->isVectorTy()) { in addEntry()
358 Entries[index].Type = nullptr; in addEntry()
361 if (begin < Entries[index].Begin) { in addEntry()
362 Entries[index].Begin = begin; in addEntry()
363 assert(index == 0 || begin >= Entries[index - 1].End); in addEntry()
368 while (end > Entries[index].End) { in addEntry()
369 assert(Entries[index].Type == nullptr); in addEntry()
372 if (index == Entries.size() - 1 || end <= Entries[index + 1].Begin) { in addEntry()
373 Entries[index].End = end; in addEntry()
378 Entries[index].End = Entries[index + 1].Begin; in addEntry()
384 if (Entries[index].Type == nullptr) in addEntry()
388 if (Entries[index].Type->isVectorTy() && in addEntry()
389 end < Entries[index].End) { in addEntry()
394 Entries[index].Type = nullptr; in addEntry()
401 auto vecTy = cast<llvm::VectorType>(Entries[index].Type); in splitVectorEntry()
402 auto split = splitLegalVectorType(CGM, Entries[index].getWidth(), vecTy); in splitVectorEntry()
407 Entries.insert(Entries.begin() + index + 1, numElts - 1, StorageEntry()); in splitVectorEntry()
409 CharUnits begin = Entries[index].Begin; in splitVectorEntry()
411 Entries[index].Type = eltTy; in splitVectorEntry()
412 Entries[index].Begin = begin; in splitVectorEntry()
413 Entries[index].End = begin + eltSize; in splitVectorEntry()
469 if (Entries.empty()) { in finish()
481 bool hasOpaqueEntries = (Entries[0].Type == nullptr); in finish()
482 for (size_t i = 1, e = Entries.size(); i != e; ++i) { in finish()
483 if (shouldMergeEntries(Entries[i - 1], Entries[i], chunkSize)) { in finish()
484 Entries[i - 1].Type = nullptr; in finish()
485 Entries[i].Type = nullptr; in finish()
486 Entries[i - 1].End = Entries[i].Begin; in finish()
489 } else if (Entries[i].Type == nullptr) { in finish()
502 auto orig = std::move(Entries); in finish()
503 assert(Entries.empty()); in finish()
508 Entries.push_back(orig[i]); in finish()
548 Entries.push_back({unitBegin, unitEnd, entryTy}); in finish()
562 for (auto &entry : Entries) { in enumerateComponents()
573 if (Entries.empty()) { in getCoerceAndExpandTypes()
582 for (auto &entry : Entries) { in getCoerceAndExpandTypes()
611 for (auto &entry : Entries) { in getCoerceAndExpandTypes()
619 } else if (Entries.size() == 1) { in getCoerceAndExpandTypes()
620 unpaddedType = Entries[0].Type; in getCoerceAndExpandTypes()
630 if (Entries.empty()) return false; in shouldPassIndirectly()
633 if (Entries.size() == 1) { in shouldPassIndirectly()
635 Entries.back().Type, in shouldPassIndirectly()
640 componentTys.reserve(Entries.size()); in shouldPassIndirectly()
641 for (auto &entry : Entries) { in shouldPassIndirectly()