| /freebsd-13.1/contrib/llvm-project/lld/ELF/ |
| H A D | ICF.cpp | 115 bool equalsConstant(const InputSection *a, const InputSection *b); 116 bool equalsVariable(const InputSection *a, const InputSection *b); 125 std::vector<InputSection *> sections; 163 static bool isEligible(InputSection *s) { in isEligible() 285 if (isa<InputSection>(da->section)) { in constantEq() 314 bool ICF<ELFT>::equalsConstant(const InputSection *a, const InputSection *b) { in equalsConstant() 353 auto *x = dyn_cast<InputSection>(da->section); in variableEq() 356 auto *y = cast<InputSection>(db->section); in variableEq() 371 bool ICF<ELFT>::equalsVariable(const InputSection *a, const InputSection *b) { in equalsVariable() 480 auto *s = cast<InputSection>(sec); in run() [all …]
|
| H A D | InputSection.cpp | 213 InputSection *sec; in getOutputSection() 354 InputSection InputSection::discarded(nullptr, 0, 0, 0, ArrayRef<uint8_t>(), ""); 356 InputSection::InputSection(InputFile *f, uint64_t flags, uint32_t type, in InputSection() function in InputSection 364 InputSection::InputSection(ObjFile<ELFT> &f, const typename ELFT::Shdr &header, in InputSection() function in InputSection 605 InputSection *isec = cast<InputSection>(d->section); in getRISCVPCRelHi20() 1213 if (InputSection *isec = cast_or_null<InputSection>(d->section)) in adjustSplitStackFunctionPrologues() 1282 void InputSection::replace(InputSection *other) { in replace() 1452 template InputSection::InputSection(ObjFile<ELF32LE> &, const ELF32LE::Shdr &, 1454 template InputSection::InputSection(ObjFile<ELF32BE> &, const ELF32BE::Shdr &, 1456 template InputSection::InputSection(ObjFile<ELF64LE> &, const ELF64LE::Shdr &, [all …]
|
| H A D | Thunks.cpp | 80 bool isCompatibleWith(const InputSection &isec, 112 bool isCompatibleWith(const InputSection &isec, 177 bool isCompatibleWith(const InputSection &isec, 188 bool isCompatibleWith(const InputSection &isec, 285 bool isCompatibleWith(const InputSection &isec, 315 bool isCompatibleWith(const InputSection &isec, 338 bool isCompatibleWith(const InputSection &isec, 355 bool isCompatibleWith(const InputSection &isec, 762 return dyn_cast<InputSection>(dr.section); in getTargetInputSection() 786 return dyn_cast<InputSection>(dr.section); in getTargetInputSection() [all …]
|
| H A D | ARMErrataFix.cpp | 89 const InputSection *patchee; 138 Patch657417Section::Patch657417Section(InputSection *p, uint64_t off, in Patch657417Section() 208 static bool branchDestInFirstRegion(const InputSection *isec, uint64_t off, in branchDestInFirstRegion() 231 static bool patchInRange(const InputSection *isec, uint64_t off, in patchInRange() 257 static ScanResult scanCortexA8Errata657417(InputSection *isec, uint64_t &off, in scanCortexA8Errata657417() 341 if (auto *sec = dyn_cast_or_null<InputSection>(def->section)) in init() 380 for (const InputSection *isec : isd.sections) { in insertPatches() 399 std::vector<InputSection *> tmp; in insertPatches() 401 auto mergeCmp = [](const InputSection *a, const InputSection *b) { in insertPatches() 416 static void implementPatch(ScanResult sr, InputSection *isec, in implementPatch() [all …]
|
| H A D | OutputSections.cpp | 113 void OutputSection::commitSection(InputSection *isec) { in commitSection() 177 cmd->sections.push_back(cast<InputSection>(s)); in finalizeInputSections() 216 for (InputSection *s : cmd->sections) in finalizeInputSections() 223 static void sortByOrder(MutableArrayRef<InputSection *> in, in sortByOrder() 225 std::vector<std::pair<int, InputSection *>> v; in sortByOrder() 226 for (InputSection *s : in) in sortByOrder() 349 InputSection *isec = sections[i]; in writeTo() 376 InputSection *section) { in finalizeShtGroup() 399 InputSection *first = getFirstInputSection(this); in finalize() 472 static bool compCtors(const InputSection *a, const InputSection *b) { in compCtors() [all …]
|
| H A D | AArch64ErrataFix.cpp | 337 static uint64_t scanCortexA53Errata843419(InputSection *isec, uint64_t &off, in scanCortexA53Errata843419() 375 Patch843419Section(InputSection *p, uint64_t off); 388 const InputSection *patchee; 395 Patch843419Section::Patch843419Section(InputSection *p, uint64_t off) in Patch843419Section() 451 if (auto *sec = dyn_cast_or_null<InputSection>(def->section)) in init() 495 for (const InputSection *isec : isd.sections) { in insertPatches() 516 std::vector<InputSection *> tmp; in insertPatches() 518 auto mergeCmp = [](const InputSection *a, const InputSection *b) { in insertPatches() 533 InputSection *isec, in implementPatch() 581 for (InputSection *isec : isd.sections) { in patchInputSectionDescription()
|
| H A D | InputFiles.cpp | 683 InputSection *isec = cast<InputSection>(this->sections[i]); in initializeSections() 685 if (!isa<InputSection>(linkSec)) in initializeSections() 900 return &InputSection::discarded; in createInputSection() 943 return &InputSection::discarded; in createInputSection() 989 InputSection *relocSec = make<InputSection>(*this, sec, name); in createInputSection() 1011 return &InputSection::discarded; in createInputSection() 1023 return &InputSection::discarded; in createInputSection() 1036 return &InputSection::discarded; in createInputSection() 1044 return &InputSection::discarded; in createInputSection() 1054 return &InputSection::discarded; in createInputSection() [all …]
|
| H A D | InputSection.h | 188 llvm::TinyPtrVector<InputSection *> dependentSections; 193 InputSection *getLinkOrderDep() const; 350 class InputSection : public InputSectionBase { 352 InputSection(InputFile *f, uint64_t flags, uint32_t type, uint32_t alignment, 355 InputSection(ObjFile<ELFT> &f, const typename ELFT::Shdr &header, 383 void replace(InputSection *other); 385 static InputSection discarded; 395 static_assert(sizeof(InputSection) <= 192, "InputSection is too big"); 397 static_assert(sizeof(InputSection) <= 184, "InputSection is too big");
|
| H A D | Relocations.h | 20 class InputSection; variable 150 ThunkSection *getISDThunkSec(OutputSection *os, InputSection *isec, 154 ThunkSection *getISThunkSec(InputSection *isec); 158 std::pair<Thunk *, bool> getThunk(InputSection *isec, Relocation &rel, 186 llvm::DenseMap<InputSection *, ThunkSection *> thunkedSections;
|
| H A D | OutputSections.h | 25 class InputSection; variable 75 void commitSection(InputSection *isec); 123 InputSection *getFirstInputSection(const OutputSection *os); 124 std::vector<InputSection *> getInputSections(const OutputSection *os);
|
| H A D | Thunks.h | 49 virtual InputSection *getTargetInputSection() const { return nullptr; } in getTargetInputSection() 53 virtual bool isCompatibleWith(const InputSection &, in isCompatibleWith() argument 71 Thunk *addThunk(const InputSection &isec, Relocation &rel);
|
| H A D | DWARF.h | 20 class InputSection; variable 35 InputSection *getInfoSection() const { in getInfoSection() 36 return cast<InputSection>(infoSection.sec); in getInfoSection()
|
| H A D | Writer.cpp | 105 if (auto *isec = dyn_cast<InputSection>(s)) { in getOutputSectionName() 192 copy = make<InputSection>(cast<InputSection>(*s)); in copySectionsIntoPartitions() 353 InputSection *sec = createInterpSection(); in createSyntheticSections() 691 InputSection *isec = dyn_cast_or_null<InputSection>(s); in markUsedLocalSymbols() 1136 InputSection *gotSection = in.gotPlt; in setReservedSymbolSections() 1401 for (InputSection *isec : isd->sections) { in sortISDBySectionOrder() 1509 [](const InputSection *a, const InputSection *b) -> bool { in sortSection() 1647 static bool compareByFilePosition(InputSection *a, InputSection *b) { in compareByFilePosition() 1677 std::vector<InputSection *> sections; in resolveShfLinkOrder() 1857 InputSection &is = *sections[i]; in optimizeBasicBlockJumps() [all …]
|
| H A D | SyntheticSections.h | 39 class SyntheticSection : public InputSection { 508 void addInSec(int32_t tag, InputSection *sec); 778 InputSection *section; 795 InputSection *sec; 1083 bool addSection(InputSection *isec); 1090 InputSection *getLinkOrderDep() const; 1096 std::vector<InputSection *> exidxSections; 1111 InputSection *sentinel = nullptr; 1128 InputSection *getTargetInputSection() const; 1196 InputSection *createInterpSection(); [all …]
|
| H A D | ARMErrataFix.h | 21 class InputSection; variable 43 llvm::DenseMap<InputSection *, std::vector<const Defined *>> sectionMap;
|
| H A D | AArch64ErrataFix.h | 20 class InputSection; variable 42 std::map<InputSection *, std::vector<const Defined *>> sectionMap;
|
| H A D | MarkLive.cpp | 68 SmallVector<InputSection *, 0> queue; 193 if (sec == &InputSection::discarded) in enqueue() 210 if (InputSection *s = dyn_cast<InputSection>(sec)) in enqueue() 389 for (InputSection *isec : sec->dependentSections) in markLive()
|
| /freebsd-13.1/contrib/llvm-project/lld/MachO/ |
| H A D | InputSection.h | 29 class InputSection { 38 virtual ~InputSection() = default; 53 virtual InputSection *canonical() { return this; } in canonical() 100 : InputSection(ConcatKind, segname, name) {} in ConcatInputSection() 119 InputSection *canonical() override { in canonical() 123 static bool classof(const InputSection *isec) { in classof() 128 InputSection *replacement = nullptr; 159 inline bool isCoalescedWeak(InputSection *isec) { in isCoalescedWeak() 222 static bool classof(const InputSection *isec) { in classof() 279 bool isCodeSection(const InputSection *); [all …]
|
| H A D | InputSection.cpp | 31 uint64_t InputSection::getFileSize() const { in getFileSize() 35 uint64_t InputSection::getVA(uint64_t off) const { in getVA() 120 auto *referentIsec = minuend.referent.get<InputSection *>(); in writeTo() 139 } else if (auto *referentIsec = r.referent.dyn_cast<InputSection *>()) { in writeTo() 186 : InputSection(WordLiteralKind, segname, name, file, data, align, flags) { in WordLiteralInputSection() 219 bool macho::isCodeSection(const InputSection *isec) { in isCodeSection() 236 bool macho::isCfStringSection(const InputSection *isec) { in isCfStringSection() 241 std::string lld::toString(const InputSection *isec) { in toString()
|
| H A D | ICF.cpp | 107 InputSection *isecA, *isecB; in equalsConstant() 128 isecA = ra.referent.get<InputSection *>(); in equalsConstant() 129 isecB = rb.referent.get<InputSection *>(); in equalsConstant() 170 const auto *sa = ra.referent.get<InputSection *>(); in equalsVariable() 171 const auto *sb = rb.referent.get<InputSection *>(); in equalsVariable() 315 DenseSet<const InputSection *> findFunctionsWithUnwindInfo() { in findFunctionsWithUnwindInfo() 316 DenseSet<const InputSection *> result; in findFunctionsWithUnwindInfo() 324 result.insert(r.referent.get<InputSection *>()); in findFunctionsWithUnwindInfo() 340 DenseSet<const InputSection *> functionsWithUnwindInfo = in foldIdenticalSections()
|
| H A D | MarkLive.cpp | 37 auto enqueue = [&](InputSection *isec, uint64_t off) { in markLive() 142 enqueue(r.referent.get<InputSection *>(), r.addend); in markLive() 157 enqueue(r.referent.get<InputSection *>(), r.addend); in markLive() 174 referentLive = r.referent.get<InputSection *>()->isLive(r.addend); in markLive()
|
| H A D | SymbolTable.h | 26 class InputSection; variable 40 Defined *addDefined(StringRef name, InputFile *, InputSection *, 56 Defined *addSynthetic(StringRef name, InputSection *, uint64_t value,
|
| H A D | Relocations.h | 25 class InputSection; variable 63 llvm::PointerUnion<Symbol *, InputSection *> referent = nullptr; 66 bool validateSymbolRelocation(const Symbol *, const InputSection *,
|
| H A D | Writer.h | 18 class InputSection; variable 33 void addNonLazyBindingEntries(const Symbol *, const InputSection *,
|
| H A D | ConcatOutputSection.cpp | 127 for (InputSection *isec : inputs) in needsThunks() 132 for (InputSection *isec : inputs) { in needsThunks() 172 InputSection *isec = inputs[i]; in estimateStubsInRangeVA() 339 void ConcatOutputSection::finalizeFlags(InputSection *input) { in finalizeFlags() 364 ConcatOutputSection::getOrCreateForInput(const InputSection *isec) { in getOrCreateForInput()
|