Lines Matching refs:Entries

267   if (Entries.empty() || Entries.back().End <= begin) {  in addEntry()
268 Entries.push_back({begin, end, type}); in addEntry()
274 size_t index = Entries.size() - 1; in addEntry()
276 if (Entries[index - 1].End <= begin) break; in addEntry()
282 if (Entries[index].Begin >= end) { in addEntry()
286 Entries.insert(Entries.begin() + index, {begin, end, type}); in addEntry()
295 if (Entries[index].Begin == begin && Entries[index].End == end) { in addEntry()
297 if (Entries[index].Type == type) return; in addEntry()
300 if (Entries[index].Type == nullptr) { in addEntry()
303 Entries[index].Type = nullptr; in addEntry()
309 if (auto entryType = getCommonType(Entries[index].Type, type)) { in addEntry()
310 Entries[index].Type = entryType; in addEntry()
315 Entries[index].Type = nullptr; in addEntry()
335 if (Entries[index].Type && Entries[index].Type->isVectorTy()) { in addEntry()
342 Entries[index].Type = nullptr; in addEntry()
345 if (begin < Entries[index].Begin) { in addEntry()
346 Entries[index].Begin = begin; in addEntry()
347 assert(index == 0 || begin >= Entries[index - 1].End); in addEntry()
352 while (end > Entries[index].End) { in addEntry()
353 assert(Entries[index].Type == nullptr); in addEntry()
356 if (index == Entries.size() - 1 || end <= Entries[index + 1].Begin) { in addEntry()
357 Entries[index].End = end; in addEntry()
362 Entries[index].End = Entries[index + 1].Begin; in addEntry()
368 if (Entries[index].Type == nullptr) in addEntry()
372 if (Entries[index].Type->isVectorTy() && in addEntry()
373 end < Entries[index].End) { in addEntry()
378 Entries[index].Type = nullptr; in addEntry()
385 auto vecTy = cast<llvm::VectorType>(Entries[index].Type); in splitVectorEntry()
386 auto split = splitLegalVectorType(CGM, Entries[index].getWidth(), vecTy); in splitVectorEntry()
391 Entries.insert(Entries.begin() + index + 1, numElts - 1, StorageEntry()); in splitVectorEntry()
393 CharUnits begin = Entries[index].Begin; in splitVectorEntry()
395 Entries[index].Type = eltTy; in splitVectorEntry()
396 Entries[index].Begin = begin; in splitVectorEntry()
397 Entries[index].End = begin + eltSize; in splitVectorEntry()
453 if (Entries.empty()) { in finish()
465 bool hasOpaqueEntries = (Entries[0].Type == nullptr); in finish()
466 for (size_t i = 1, e = Entries.size(); i != e; ++i) { in finish()
467 if (shouldMergeEntries(Entries[i - 1], Entries[i], chunkSize)) { in finish()
468 Entries[i - 1].Type = nullptr; in finish()
469 Entries[i].Type = nullptr; in finish()
470 Entries[i - 1].End = Entries[i].Begin; in finish()
473 } else if (Entries[i].Type == nullptr) { in finish()
486 auto orig = std::move(Entries); in finish()
487 assert(Entries.empty()); in finish()
492 Entries.push_back(orig[i]); in finish()
532 Entries.push_back({unitBegin, unitEnd, entryTy}); in finish()
546 for (auto &entry : Entries) { in enumerateComponents()
557 if (Entries.empty()) { in getCoerceAndExpandTypes()
566 for (auto &entry : Entries) { in getCoerceAndExpandTypes()
595 for (auto &entry : Entries) { in getCoerceAndExpandTypes()
603 } else if (Entries.size() == 1) { in getCoerceAndExpandTypes()
604 unpaddedType = Entries[0].Type; in getCoerceAndExpandTypes()
614 if (Entries.empty()) return false; in shouldPassIndirectly()
617 if (Entries.size() == 1) { in shouldPassIndirectly()
619 Entries.back().Type, in shouldPassIndirectly()
624 componentTys.reserve(Entries.size()); in shouldPassIndirectly()
625 for (auto &entry : Entries) { in shouldPassIndirectly()