| /freebsd/contrib/llvm-project/lld/MachO/ |
| H A D | InputSection.h | 30 class InputSection { 39 virtual ~InputSection() = default; 63 virtual InputSection *canonical() { return this; } in canonical() 64 virtual const InputSection *canonical() const { return this; } in canonical() 67 InputSection(Kind kind, const Section §ion, ArrayRef<uint8_t> data, in InputSection() function 72 InputSection(const InputSection &rhs) in InputSection() function 105 class ConcatInputSection final : public InputSection { 109 : InputSection(ConcatKind, section, data, align) {} in InputSection() function 112 uint64_t getVA() const { return InputSection::getVA(0); } in getVA() 125 const InputSection *canonical() const override { in canonical() [all …]
|
| H A D | MarkLive.cpp | 25 InputSection *isec; 29 WhyLiveEntry(InputSection *isec, const WhyLiveEntry *prev) in WhyLiveEntry() 37 virtual void enqueue(InputSection *isec, uint64_t off) = 0; 50 std::conditional_t<RecordWhyLive, WhyLiveEntry, InputSection>; 52 void enqueue(InputSection *isec, uint64_t off) override { in enqueue() 59 void enqueue(InputSection *isec, uint64_t off, const WorklistEntry *prev); 61 const InputSection *getInputSection(const WorklistEntry *) const; 62 WorklistEntry *makeEntry(InputSection *, const WorklistEntry *prev) const; 74 InputSection *isec, uint64_t off, in enqueue() 119 const InputSection *MarkLiveImpl<RecordWhyLive>::getInputSection( in getInputSection() [all …]
|
| H A D | InputSection.cpp | 44 void lld::macho::addInputSection(InputSection *inputSection) { in addInputSection() 86 uint64_t InputSection::getFileSize() const { in getFileSize() 90 uint64_t InputSection::getVA(uint64_t off) const { in getVA() 105 const Defined *InputSection::getContainingSymbol(uint64_t off) const { in getContainingSymbol() 113 std::string InputSection::getLocation(uint64_t off) const { in getLocation() 134 std::string InputSection::getSourceLocation(uint64_t off) const { in getSourceLocation() 182 const Reloc *InputSection::getRelocAt(uint32_t off) const { in getRelocAt() 233 auto *referentIsec = cast<InputSection *>(minuend.referent); in writeTo() 260 } else if (auto *referentIsec = r.referent.dyn_cast<InputSection *>()) { in writeTo() 334 : InputSection(WordLiteralKind, section, data, align) { in WordLiteralInputSection() [all …]
|
| H A D | Relocations.h | 24 class InputSection; variable 62 llvm::PointerUnion<Symbol *, InputSection *> referent = nullptr; 67 int64_t addend, llvm::PointerUnion<Symbol *, InputSection *> referent) in Reloc() 71 InputSection *getReferentInputSection() const; 78 bool validateSymbolRelocation(const Symbol *, const InputSection *, 122 InputSection *offsetToInputSection(uint64_t *);
|
| H A D | Relocations.cpp | 24 InputSection *Reloc::getReferentInputSection() const { in getReferentInputSection() 30 return cast<InputSection *>(referent); in getReferentInputSection() 35 if (auto *isec = dyn_cast<InputSection *>(referent)) { in getReferentString() 60 const InputSection *isec, const Reloc &r) { in validateSymbolRelocation() 90 InputSection *macho::offsetToInputSection(uint64_t *off) { in offsetToInputSection() 124 const InputSection *isec = offsetToInputSection(&off); in reportRangeError()
|
| H A D | EhFrame.h | 93 EhRelocator(InputSection *isec) : isec(isec) {} in EhRelocator() 98 llvm::PointerUnion<Symbol *, InputSection *> target, 102 llvm::PointerUnion<Symbol *, InputSection *> target, 108 InputSection *isec;
|
| H A D | SymbolTable.h | 25 class InputSection; variable 39 Defined *addDefined(StringRef name, InputFile *, InputSection *, 59 Defined *addSynthetic(StringRef name, InputSection *, uint64_t value, 78 void treatUndefinedSymbol(const Undefined &, const InputSection *,
|
| H A D | SectionPriorities.h | 18 using SectionPair = std::pair<const InputSection *, const InputSection *>; 68 llvm::DenseMap<const InputSection *, int> buildInputSectionPriorities();
|
| H A D | SectionPriorities.cpp | 68 DenseMap<const InputSection *, int> run(); 72 std::vector<const InputSection *> sections; 82 DenseMap<const InputSection *, int> secToCluster; in CallGraphSort() 84 auto getOrCreateCluster = [&](const InputSection *isec) -> int { in CallGraphSort() 158 DenseMap<const InputSection *, int> CallGraphSort::run() { in run() 206 DenseMap<const InputSection *, int> orderMap; in run() 230 const InputSection *isec = sections[i]; in run() 363 DenseMap<const InputSection *, int> 365 DenseMap<const InputSection *, int> sectionPriorities; in buildInputSectionPriorities()
|
| H A D | EhFrame.cpp | 109 static void createSubtraction(PointerUnion<Symbol *, InputSection *> a, in createSubtraction() 110 PointerUnion<Symbol *, InputSection *> b, in createSubtraction() 127 PointerUnion<Symbol *, InputSection *> target, in makePcRel() 133 uint64_t off, PointerUnion<Symbol *, InputSection *> target, in makeNegativePcRel()
|
| H A D | BPSectionOrderer.h | 21 class InputSection; variable 28 llvm::DenseMap<const InputSection *, int>
|
| H A D | Target.h | 31 class InputSection; variable 78 virtual void initICFSafeThunkBody(InputSection *thunk, in initICFSafeThunkBody() 85 virtual Symbol *getThunkBranchTarget(InputSection *thunk) const { in getThunkBranchTarget() 102 virtual void populateThunk(InputSection *thunk, Symbol *funcSym) { in populateThunk()
|
| H A D | Writer.h | 17 class InputSection; variable 33 void addNonLazyBindingEntries(const Symbol *, const InputSection *,
|
| /freebsd/contrib/llvm-project/lld/ELF/ |
| H A D | ICF.cpp | 106 bool constantEq(const InputSection *a, Relocs<RelTy> relsA, 107 const InputSection *b, Relocs<RelTy> relsB); 110 bool variableEq(const InputSection *a, Relocs<RelTy> relsA, 111 const InputSection *b, Relocs<RelTy> relsB); 113 bool equalsConstant(const InputSection *a, const InputSection *b); 114 bool equalsVariable(const InputSection *a, const InputSection *b); 124 SmallVector<InputSection *, 0> sections; 162 static bool isEligible(InputSection *s) { in isEligible() 214 sections.begin() + end, [&](InputSection *s) { in segregate() 239 bool ICF<ELFT>::constantEq(const InputSection *secA, Relocs<RelTy> ra, in constantEq() [all …]
|
| H A D | InputSection.cpp | 157 if (!relSec || !cast<InputSection>(relSec)->decodedCrel) { in relsOrRelas() 158 auto *sec = makeThreadLocal<InputSection>(*f, shdr, name); in relsOrRelas() 207 return cast<InputSection>(this)->outSecOff + offset; in getOffset() 217 if (InputSection *isec = es->getParent()) in getOffset() 223 if (InputSection *isec = ms->getParent()) in getOffset() 236 InputSection *sec; in getOutputSection() 237 if (auto *isec = dyn_cast<InputSection>(this)) in getOutputSection() 284 InputSection *InputSectionBase::getLinkOrderDep() const { in getLinkOrderDep() 288 return cast<InputSection>(file->getSections()[link]); in getLinkOrderDep() 381 : InputSection(source.file, source.name, source.type, source.flags, in PotentialSpillSection() [all …]
|
| H A D | ARMErrataFix.cpp | 71 Patch657417Section(Ctx &, InputSection *p, uint64_t off, uint32_t instr, 86 const InputSection *patchee; 135 Patch657417Section::Patch657417Section(Ctx &ctx, InputSection *p, uint64_t off, in Patch657417Section() 208 static bool branchDestInFirstRegion(Ctx &ctx, const InputSection *isec, in branchDestInFirstRegion() 233 static bool patchInRange(Ctx &ctx, const InputSection *isec, uint64_t off, in patchInRange() 259 static ScanResult scanCortexA8Errata657417(InputSection *isec, uint64_t &off, in scanCortexA8Errata657417() 343 if (auto *sec = dyn_cast_or_null<InputSection>(def->section)) in init() 382 for (const InputSection *isec : isd.sections) { in insertPatches() 401 SmallVector<InputSection *, 0> tmp; in insertPatches() 403 auto mergeCmp = [](const InputSection *a, const InputSection *b) { in insertPatches() [all …]
|
| H A D | InputSection.h | 244 llvm::TinyPtrVector<InputSection *> dependentSections; 249 InputSection *getLinkOrderDep() const; 415 class InputSection : public InputSectionBase { 417 InputSection(InputFile *f, StringRef name, uint32_t type, uint64_t flags, 421 InputSection(ObjFile<ELFT> &f, const typename ELFT::Shdr &header, 451 InputSection *repl = this; 457 void replace(InputSection *other); 459 static InputSection discarded; 473 class PotentialSpillSection : public InputSection { 491 static_assert(sizeof(InputSection) <= 152, "InputSection is too big"); [all …]
|
| H A D | AArch64ErrataFix.cpp | 335 static uint64_t scanCortexA53Errata843419(InputSection *isec, uint64_t &off, in scanCortexA53Errata843419() 373 Patch843419Section(Ctx &, InputSection *p, uint64_t off); 386 const InputSection *patchee; 393 Patch843419Section::Patch843419Section(Ctx &ctx, InputSection *p, uint64_t off) in Patch843419Section() 448 if (auto *sec = dyn_cast_or_null<InputSection>(def->section)) in init() 493 for (const InputSection *isec : isd.sections) { in insertPatches() 514 SmallVector<InputSection *, 0> tmp; in insertPatches() 516 auto mergeCmp = [](const InputSection *a, const InputSection *b) { in insertPatches() 531 InputSection *isec, in implementPatch() 578 for (InputSection *isec : isd.sections) { in patchInputSectionDescription()
|
| H A D | OutputSections.h | 78 void commitSection(InputSection *isec); 135 SmallVector<InputSection *, 0> storage; 170 InputSection *getFirstInputSection(const OutputSection *os); 171 llvm::ArrayRef<InputSection *> 173 SmallVector<InputSection *, 0> &storage);
|
| H A D | OutputSections.cpp | 117 void OutputSection::commitSection(InputSection *isec) { in commitSection() 215 isd->sections.push_back(cast<InputSection>(s)); in finalizeInputSections() 259 for (InputSection *s : isd->sections) in finalizeInputSections() 278 static void sortByOrder(MutableArrayRef<InputSection *> in, in sortByOrder() 280 std::vector<std::pair<int, InputSection *>> v; in sortByOrder() 281 for (InputSection *s : in) in sortByOrder() 535 ArrayRef<InputSection *> sections = getInputSections(*this, storage); in writeTo() 550 InputSection *isec = sections[i]; in writeTo() 613 InputSection *section) { in finalizeShtGroup() 682 Elf_Crel<ELFT::Is64Bits> &out, InputSection *relSec, in relToCrel() [all …]
|
| H A D | Thunks.h | 49 virtual InputSection *getTargetInputSection() const { return nullptr; } in getTargetInputSection() 53 virtual bool isCompatibleWith(const InputSection &, in isCompatibleWith() argument 79 std::unique_ptr<Thunk> addThunk(Ctx &, const InputSection &isec,
|
| H A D | InputFiles.cpp | 411 if (s != &InputSection::discarded && s->flags & SHF_ALLOC) in handleSectionGroup() 427 if (!s || s == &InputSection::discarded) in handleSectionGroup() 585 sections[secIndex] = &InputSection::discarded; in parse() 607 sections[i] = &InputSection::discarded; in parse() 618 sections[i] = &InputSection::discarded; in parse() 622 InputSection isec(*this, sec, name); in parse() 634 std::make_unique<InputSection>(*this, sec, name); in parse() 647 sections[i] = &InputSection::discarded; in parse() 654 sections[i] = &InputSection::discarded; in parse() 749 if (this->sections[i] == &InputSection::discarded) in initializeSections() [all …]
|
| H A D | Thunks.cpp | 154 bool isCompatibleWith(const InputSection &isec, 189 bool isCompatibleWith(const InputSection &isec, 423 HexagonThunk(Ctx &ctx, const InputSection &isec, Relocation &rel, in HexagonThunk() 442 InputSection *getTargetInputSection() const override; 453 InputSection *getTargetInputSection() const override; 464 InputSection *getTargetInputSection() const override; 471 PPC32PltCallStub(Ctx &ctx, const InputSection &isec, const Relocation &rel, in PPC32PltCallStub() 477 bool isCompatibleWith(const InputSection &isec, const Relocation &rel) const override; 507 bool isCompatibleWith(const InputSection &isec, 538 bool isCompatibleWith(const InputSection &isec, [all …]
|
| H A D | DWARF.h | 22 class InputSection; variable 37 InputSection *getInfoSection() const { in getInfoSection() 38 return cast<InputSection>(infoSection.sec); in getInfoSection()
|
| H A D | AArch64ErrataFix.h | 19 class InputSection; variable 42 llvm::DenseMap<InputSection *, std::vector<const Defined *>> sectionMap;
|