Lines Matching refs:sec

87   auto *sec = make<MergeInputSection>(SHF_MERGE | SHF_STRINGS, SHT_PROGBITS, 1,  in createCommentSection()  local
89 sec->splitIntoPieces(); in createCommentSection()
90 return sec; in createCommentSection()
110 for (InputSectionBase *sec : inputSections) { in create()
111 if (sec->type != SHT_MIPS_ABIFLAGS) in create()
113 sec->markDead(); in create()
116 std::string filename = toString(sec->file); in create()
117 const size_t size = sec->rawData.size(); in create()
126 auto *s = reinterpret_cast<const Elf_Mips_ABIFlags *>(sec->rawData.data()); in create()
177 for (InputSectionBase *sec : inputSections) in create()
178 if (sec->type == SHT_MIPS_OPTIONS) in create()
179 sections.push_back(sec); in create()
185 for (InputSectionBase *sec : sections) { in create()
186 sec->markDead(); in create()
188 std::string filename = toString(sec->file); in create()
189 ArrayRef<uint8_t> d = sec->rawData; in create()
200 sec->getFile<ELFT>()->mipsGp0 = opt->getRegInfo().ri_gp_value; in create()
234 for (InputSectionBase *sec : inputSections) in create()
235 if (sec->type == SHT_MIPS_REGINFO) in create()
236 sections.push_back(sec); in create()
242 for (InputSectionBase *sec : sections) { in create()
243 sec->markDead(); in create()
245 if (sec->rawData.size() != sizeof(Elf_Mips_RegInfo)) { in create()
246 error(toString(sec->file) + ": invalid size of .reginfo section"); in create()
250 auto *r = reinterpret_cast<const Elf_Mips_RegInfo *>(sec->rawData.data()); in create()
252 sec->getFile<ELFT>()->mipsGp0 = r->ri_gp_value; in create()
361 &cie.sec->template getFile<ELFT>()->getRelocTargetSym(rels[firstRelI]); in addCie()
379 auto *sec = cast<EhInputSection>(fde.sec); in isFdeLive() local
391 Symbol &b = sec->template getFile<ELFT>()->getRelocTargetSym(rel); in isFdeLive()
406 void EhFrameSection::addRecords(EhInputSection *sec, ArrayRef<RelTy> rels) { in addRecords() argument
408 for (EhSectionPiece &piece : sec->pieces) { in addRecords()
424 fatal(toString(sec) + ": invalid CIE reference"); in addRecords()
434 void EhFrameSection::addSectionAux(EhInputSection *sec) { in addSectionAux() argument
435 if (!sec->isLive()) in addSectionAux()
437 const RelsOrRelas<ELFT> rels = sec->template relsOrRelas<ELFT>(); in addSectionAux()
439 addRecords<ELFT>(sec, rels.rels); in addSectionAux()
441 addRecords<ELFT>(sec, rels.relas); in addSectionAux()
444 void EhFrameSection::addSection(EhInputSection *sec) { in addSection() argument
445 sec->parent = this; in addSection()
447 alignment = std::max(alignment, sec->alignment); in addSection()
448 sections.push_back(sec); in addSection()
450 for (auto *ds : sec->dependentSections) in addSection()
458 EhInputSection &sec, ArrayRef<RelTy> rels, DenseSet<size_t> &ciesWithLSDA, in iterateFDEWithLSDAAux() argument
460 for (EhSectionPiece &piece : sec.pieces) { in iterateFDEWithLSDAAux()
488 for (EhInputSection *sec : sections) { in iterateFDEWithLSDA()
490 const RelsOrRelas<ELFT> rels = sec->template relsOrRelas<ELFT>(); in iterateFDEWithLSDA()
492 iterateFDEWithLSDAAux<ELFT>(*sec, rels.rels, ciesWithLSDA, fn); in iterateFDEWithLSDA()
494 iterateFDEWithLSDAAux<ELFT>(*sec, rels.relas, ciesWithLSDA, fn); in iterateFDEWithLSDA()
516 for (EhInputSection *sec : sections) in finalizeContents()
517 addSectionAux<ELF32LE>(sec); in finalizeContents()
520 for (EhInputSection *sec : sections) in finalizeContents()
521 addSectionAux<ELF32BE>(sec); in finalizeContents()
524 for (EhInputSection *sec : sections) in finalizeContents()
525 addSectionAux<ELF64LE>(sec); in finalizeContents()
528 for (EhInputSection *sec : sections) in finalizeContents()
529 addSectionAux<ELF64BE>(sec); in finalizeContents()
567 fatal(toString(fde->sec) + ": PC offset is too large: 0x" + in getFdeData()
1330 auto addInSec = [&](int32_t tag, const InputSection &sec) { in computeContents() argument
1331 entries.emplace_back(tag, sec.getVA()); in computeContents()
1557 if (OutputSection *sec = getPartition().dynStrTab->getParent()) in finalizeContents() local
1558 getParent()->link = sec->sectionIndex; in finalizeContents()
2107 if (OutputSection *sec = strTabSec.getParent()) in finalizeContents() local
2108 getParent()->link = sec->sectionIndex; in finalizeContents()
2381 if (OutputSection *sec = getPartition().dynSymTab->getParent()) in finalizeContents() local
2382 getParent()->link = sec->sectionIndex; in finalizeContents()
2500 if (OutputSection *sec = symTab->getParent()) in finalizeContents() local
2501 getParent()->link = sec->sectionIndex; in finalizeContents()
2752 readAddressAreas(DWARFContext &dwarf, InputSection *sec) { in readAddressAreas() argument
2758 warn(toString(sec) + ": " + toString(std::move(e))); in readAddressAreas()
2763 warn(toString(sec) + ": " + toString(ranges.takeError())); in readAddressAreas()
2767 ArrayRef<InputSectionBase *> sections = sec->file->getSections(); in readAddressAreas()
2795 warn(toString(pub->sec) + ": " + toString(std::move(e))); in readPubNamesAndTypes()
2937 chunks[i].sec = dobj.getInfoSection(); in create()
2939 chunks[i].addressAreas = readAddressAreas(dwarf, chunks[i].sec); in create()
2961 write64le(buf, chunk.sec->outSecOff + cu.cuOffset); in writeTo()
3083 if (OutputSection *sec = getPartition().dynStrTab->getParent()) in finalizeContents() local
3084 getParent()->link = sec->sectionIndex; in finalizeContents()
3213 if (OutputSection *sec = getPartition().dynStrTab->getParent()) in finalizeContents() local
3214 getParent()->link = sec->sectionIndex; in finalizeContents()
3276 for (MergeInputSection *sec : sections) in finalizeContents()
3277 for (size_t i = 0, e = sec->pieces.size(); i != e; ++i) in finalizeContents()
3278 if (sec->pieces[i].live) in finalizeContents()
3279 builder.add(sec->getData(i)); in finalizeContents()
3287 for (MergeInputSection *sec : sections) in finalizeContents()
3288 for (size_t i = 0, e = sec->pieces.size(); i != e; ++i) in finalizeContents()
3289 if (sec->pieces[i].live) in finalizeContents()
3290 sec->pieces[i].outputOff = builder.getOffset(sec->getData(i)); in finalizeContents()
3320 for (MergeInputSection *sec : sections) { in finalizeContents()
3321 for (size_t i = 0, e = sec->pieces.size(); i != e; ++i) { in finalizeContents()
3322 if (!sec->pieces[i].live) in finalizeContents()
3324 size_t shardId = getShardId(sec->pieces[i].hash); in finalizeContents()
3326 sec->pieces[i].outputOff = shards[shardId].add(sec->getData(i)); in finalizeContents()
3344 parallelForEach(sections, [&](MergeInputSection *sec) { in finalizeContents() argument
3345 for (size_t i = 0, e = sec->pieces.size(); i != e; ++i) in finalizeContents()
3346 if (sec->pieces[i].live) in finalizeContents()
3347 sec->pieces[i].outputOff += in finalizeContents()
3348 shardOffsets[getShardId(sec->pieces[i].hash)]; in finalizeContents()
3357 for (InputSectionBase *sec : file->getSections()) { in splitSections()
3358 if (!sec) in splitSections()
3360 if (auto *s = dyn_cast<MergeInputSection>(sec)) in splitSections()
3362 else if (auto *eh = dyn_cast<EhInputSection>(sec)) in splitSections()