Home
last modified time | relevance | path

Searched refs:ConcatInputSection (Results 1 – 21 of 21) sorted by relevance

/freebsd/contrib/llvm-project/lld/MachO/
H A DICF.cpp33 ICF(std::vector<ConcatInputSection *> &inputs);
36 using EqualsFn = bool (ICF::*)(const ConcatInputSection *,
37 const ConcatInputSection *);
44 bool equalsConstant(const ConcatInputSection *ia,
45 const ConcatInputSection *ib);
46 bool equalsVariable(const ConcatInputSection *ia,
47 const ConcatInputSection *ib);
52 std::vector<ConcatInputSection *> icfInputs;
60 ICF::ICF(std::vector<ConcatInputSection *> &inputs) { in ICF()
96 bool ICF::equalsConstant(const ConcatInputSection *ia, in equalsConstant()
[all …]
H A DObjC.cpp147 const ConcatInputSection *isec;
165 void parseCategory(const ConcatInputSection *catListIsec);
169 void parseMethods(const ConcatInputSection *methodsIsec,
171 const ConcatInputSection *containerIsec,
188 void ObjcCategoryChecker::parseMethods(const ConcatInputSection *methodsIsec, in parseMethods()
190 const ConcatInputSection *containerIsec, in parseMethods()
260 void ObjcCategoryChecker::parseCategory(const ConcatInputSection *catIsec) { in parseCategory()
271 parseMethods(cast<ConcatInputSection>(r->getReferentInputSection()), in parseCategory()
276 parseMethods(cast<ConcatInputSection>(r->getReferentInputSection()), in parseCategory()
284 [&](const InputSection *classIsec) -> ConcatInputSection * { in parseClass()
[all …]
H A DConcatOutputSection.h32 const ConcatInputSection *firstSection() const { return inputs.front(); } in firstSection()
33 const ConcatInputSection *lastSection() const { return inputs.back(); } in lastSection()
46 void addInput(ConcatInputSection *input);
55 std::vector<ConcatInputSection *> inputs;
60 void finalizeOne(ConcatInputSection *);
75 ArrayRef<ConcatInputSection *> getThunks() const { return thunks; } in getThunks()
85 std::vector<ConcatInputSection *> thunks;
101 ConcatInputSection *isec = nullptr; // input section for active thunk
H A DInputSection.h105 class ConcatInputSection final : public InputSection {
107 ConcatInputSection(const Section &section, ArrayRef<uint8_t> data,
120 void foldIdentical(ConcatInputSection *redundant,
122 ConcatInputSection *canonical() override { in canonical()
134 ConcatInputSection *replacement = nullptr;
154 ConcatInputSection *makeSyntheticInputSection(StringRef segName,
163 return isa<ConcatInputSection>(isec) && in shouldOmitFromOutput()
164 cast<ConcatInputSection>(isec)->shouldOmitFromOutput(); in shouldOmitFromOutput()
168 return isa<ConcatInputSection>(isec) && in isCoalescedWeak()
169 cast<ConcatInputSection>(isec)->isCoalescedWeak(); in isCoalescedWeak()
[all …]
H A DConcatOutputSection.cpp26 void ConcatOutputSection::addInput(ConcatInputSection *input) { in addInput()
126 for (ConcatInputSection *isec : inputs) in needsThunks()
150 for (ConcatInputSection *isec : inputs) { in needsThunks()
199 llvm::partition_point(thunks, [isecVA](const ConcatInputSection *t) { in estimateBranchTargetThresholdVA()
256 void ConcatOutputSection::finalizeOne(ConcatInputSection *isec) { in finalizeOne()
266 for (ConcatInputSection *isec : inputs) in finalizeContents()
272 for (ConcatInputSection *isec : inputs) in finalize()
298 ConcatInputSection *isec = inputs[callIdx]; in finalize()
426 for (ConcatInputSection *isec : inputs) in writeTo()
H A DSyntheticSections.h324 static ConcatInputSection *getSelRef(StringRef methname);
325 static ConcatInputSection *makeSelRef(StringRef methname);
328 static llvm::DenseMap<llvm::CachedHashStringRef, ConcatInputSection *>
683 void addInput(ConcatInputSection *isec) { sections.push_back(isec); } in addInput()
684 const std::vector<ConcatInputSection *> &inputs() const { return sections; } in inputs()
687 std::vector<ConcatInputSection *> sections;
696 static bool isMethodList(const ConcatInputSection *isec);
697 void addInput(ConcatInputSection *isec) { inputs.push_back(isec); } in addInput()
698 std::vector<ConcatInputSection *> getInputs() { return inputs; } in getInputs()
712 void writeRelativeOffsetForIsec(const ConcatInputSection *isec, uint8_t *buf,
[all …]
H A DInputSection.cpp34 sizeof(ConcatInputSection) == sizeof(std::vector<Reloc>) + 88,
38 std::vector<ConcatInputSection *> macho::inputSections;
45 if (auto *isec = dyn_cast<ConcatInputSection>(inputSection)) { in addInputSection()
190 void ConcatInputSection::foldIdentical(ConcatInputSection *copy, in foldIdentical()
211 void ConcatInputSection::writeTo(uint8_t *buf) { in writeTo()
273 ConcatInputSection *macho::makeSyntheticInputSection(StringRef segName, in makeSyntheticInputSection()
280 auto isec = make<ConcatInputSection>(section, data, align); in makeSyntheticInputSection()
H A DMarkLive.cpp79 if (auto s = dyn_cast<ConcatInputSection>(isec)) { in enqueue()
153 auto *isec = cast<ConcatInputSection>(getInputSection(entry)); in markTransitively()
169 for (ConcatInputSection *isec : inputSections) { in markTransitively()
259 for (ConcatInputSection *isec : inputSections) { in markLive()
276 for (ConcatInputSection *isec : in.initOffsets->inputs()) in markLive()
H A DRelocations.cpp50 if (isa<ConcatInputSection>(symIsec)) { in getReferentString()
108 const ConcatInputSection *isec = osec->inputs[isecIdx]; in offsetToInputSection()
113 ConcatInputSection *isec = osec->inputs[isecIdx - 1]; in offsetToInputSection()
H A DMapFile.cpp205 auto printOne = [&](const ConcatInputSection *isec) { in writeMapFile()
219 auto printIsecArrSyms = [&](ArrayRef<ConcatInputSection *> arr1, in writeMapFile()
220 ArrayRef<ConcatInputSection *> arr2 = {}) { in writeMapFile()
H A DInputFiles.cpp366 auto *isec = make<ConcatInputSection>( in parseSections()
411 auto *isec = make<ConcatInputSection>(section, data, align); in parseSections()
444 {frameOff, make<ConcatInputSection>(ehFrameSection, in splitEhFrames()
485 static Defined *findSymbolAtOffset(const ConcatInputSection *isec, in findSymbolAtOffset()
896 sym.n_desc & N_ALT_ENTRY || !isa<ConcatInputSection>(isec)) { in parseSymbols()
902 auto *concatIsec = cast<ConcatInputSection>(isec); in parseSymbols()
904 auto *nextIsec = make<ConcatInputSection>(*concatIsec); in parseSymbols()
946 ConcatInputSection *isec = make<ConcatInputSection>(section, data); in OpaqueFile()
1124 ConcatInputSection *isec = cast<ConcatInputSection>(subsection.isec); in registerCompactUnwind()
1154 ConcatInputSection *referentIsec; in registerCompactUnwind()
[all …]
H A DSyntheticSections.cpp819 llvm::DenseMap<llvm::CachedHashStringRef, ConcatInputSection *>
829 for (ConcatInputSection *isec : inputSections) { in initialize()
850 ConcatInputSection *ObjCSelRefsHelper::makeSelRef(StringRef methname) { in makeSelRef()
857 ConcatInputSection *objcSelref = in makeSelRef()
875 ConcatInputSection *ObjCSelRefsHelper::getSelRef(StringRef methname) { in getSelRef()
1090 if (cast<ConcatInputSection>(isec)->shouldOmitFromOutput()) in collectDataInCodeEntries()
1960 for (const ConcatInputSection *isec : sections) in getSize()
1967 for (ConcatInputSection *isec : sections) { in writeTo()
1992 for (const ConcatInputSection *isec : sections) { in setUp()
2025 for (const ConcatInputSection *isec : inputs) { in setUp()
[all …]
H A DInputFiles.h44 class ConcatInputSection; variable
184 std::vector<ConcatInputSection *> debugSections;
186 llvm::DenseMap<ConcatInputSection *, FDE> fdes;
H A DSymbols.h144 ConcatInputSection *unwindEntry() const;
196 ConcatInputSection *originalUnwindEntry = nullptr;
H A DSymbols.cpp125 ConcatInputSection *Defined::unwindEntry() const { in unwindEntry()
H A DSymbolTable.cpp122 if (auto concatIsec = dyn_cast_or_null<ConcatInputSection>(isec)) { in addDefined()
138 dyn_cast_or_null<ConcatInputSection>(defined->isec())) { in addDefined()
379 ConcatInputSection *isec = makeSyntheticInputSection(segName, sectName); in handleSectionBoundarySymbol()
H A DBPSectionOrderer.cpp122 if (isa<ConcatInputSection>(isec) && !isec->isLive(0)) in runBalancedPartitioning()
H A DUnwindInfoSection.cpp143 void prepareRelocations(ConcatInputSection *);
227 void UnwindInfoSectionImpl::prepareRelocations(ConcatInputSection *isec) { in prepareRelocations()
H A DWriter.cpp703 ConcatInputSection *isec = inputSections[i]; in scanRelocations()
1046 for (ConcatInputSection *isec : inputSections) { in createOutputSections()
H A DDriver.cpp639 auto *isec = make<ConcatInputSection>(*section, data, common->align); in replaceCommonSymbols()
1324 for (ConcatInputSection *isec : inputSections) { in codegenDataGenerate()
1507 for (ConcatInputSection *isec : in.initOffsets->inputs()) in eraseInitializerSymbols()
/freebsd/contrib/llvm-project/lld/MachO/Arch/
H A DARM64.cpp395 static bool applyAdrpAdd(uint8_t *buf, const ConcatInputSection *isec, in applyAdrpAdd()
425 static void applyAdrpAdrp(uint8_t *buf, const ConcatInputSection *isec, in applyAdrpAdrp()
452 static void applyAdrpLdr(uint8_t *buf, const ConcatInputSection *isec, in applyAdrpLdr()
477 static void applyAdrpLdrGot(uint8_t *buf, const ConcatInputSection *isec, in applyAdrpLdrGot()
495 static void applyAdrpAddLdr(uint8_t *buf, const ConcatInputSection *isec, in applyAdrpAddLdr()
549 static void applyAdrpLdrGotLdr(uint8_t *buf, const ConcatInputSection *isec, in applyAdrpLdrGotLdr()
622 const ConcatInputSection *section = nullptr; in applyOptimizationHints()
644 const ConcatInputSection *isec = in applyOptimizationHints()
645 dyn_cast_or_null<ConcatInputSection>(subsec.isec); in applyOptimizationHints()