Lines Matching refs:Segment

38 template <class ELFT> void ELFWriter<ELFT>::writePhdr(const Segment &Seg) {  in writePhdr()
747 const Segment &Segment) { in sectionWithinSegment() argument
753 return Segment.Offset <= Section.OriginalOffset && in sectionWithinSegment()
754 Segment.Offset + Segment.FileSize >= Section.OriginalOffset + SecSize; in sectionWithinSegment()
759 static bool segmentOverlapsSegment(const Segment &Child, in segmentOverlapsSegment()
760 const Segment &Parent) { in segmentOverlapsSegment()
766 static bool compareSegmentsByOffset(const Segment *A, const Segment *B) { in compareSegmentsByOffset()
776 static bool compareSegmentsByPAddr(const Segment *A, const Segment *B) { in compareSegmentsByPAddr()
857 template <class ELFT> void ELFBuilder<ELFT>::setParentSegment(Segment &Child) { in setParentSegment()
878 Segment &Seg = Obj.addSegment(Data); in readProgramHeaders()
1343 for (auto &Segment : Segments) in removeSections() local
1344 Segment->removeSection(RemoveSec.get()); in removeSections()
1384 static void orderSegments(std::vector<Segment *> &Segments) { in orderSegments()
1392 static uint64_t LayoutSegments(std::vector<Segment *> &Segments, in LayoutSegments()
1401 for (auto &Segment : Segments) { in LayoutSegments() local
1406 if (Segment->ParentSegment != nullptr) { in LayoutSegments()
1407 auto Parent = Segment->ParentSegment; in LayoutSegments()
1408 Segment->Offset = in LayoutSegments()
1409 Parent->Offset + Segment->OriginalOffset - Parent->OriginalOffset; in LayoutSegments()
1411 Offset = alignToAddr(Offset, Segment->VAddr, Segment->Align); in LayoutSegments()
1412 Segment->Offset = Offset; in LayoutSegments()
1414 Offset = std::max(Offset, Segment->Offset + Segment->FileSize); in LayoutSegments()
1437 auto Segment = *Section.ParentSegment; in layoutSections() local
1439 Segment.Offset + (Section.OriginalOffset - Segment.OriginalOffset); in layoutSections()
1465 std::vector<Segment *> OrderedSegments; in assignOffsets()
1466 for (auto &Segment : Obj.segments()) in assignOffsets() local
1467 OrderedSegments.push_back(&Segment); in assignOffsets()
1608 std::vector<Segment *> OrderedSegments; in finalize()
1621 [](const Segment *Seg) { return Seg->PAddr == 0; })) in finalize()
1622 for (Segment *Seg : OrderedSegments) in finalize()
1651 for (auto &Segment : OrderedSegments) { in finalize() local
1652 Segment->Offset = Segment->PAddr - LowestPAddr; in finalize()
1653 Offset = std::max(Offset, Segment->Offset + Segment->FileSize); in finalize()