Home
last modified time | relevance | path

Searched refs:InputSectionBase (Results 1 – 25 of 34) sorted by relevance

12

/external/llvm-project/lld/ELF/
DMarkLive.cpp54 void enqueue(InputSectionBase *sec, uint64_t offset);
59 void resolveReloc(InputSectionBase &sec, RelTy &rel, bool fromFDE);
72 DenseMap<StringRef, std::vector<InputSectionBase *>> cNamedSections;
77 static uint64_t getAddend(InputSectionBase &sec, in getAddend()
84 static uint64_t getAddend(InputSectionBase &sec, in getAddend()
91 void MarkLive<ELFT>::resolveReloc(InputSectionBase &sec, RelTy &rel, in resolveReloc()
99 auto *relSec = dyn_cast_or_null<InputSectionBase>(d->section); in resolveReloc()
125 for (InputSectionBase *sec : cNamedSections.lookup(sym.getName())) in resolveReloc()
170 static bool isReserved(InputSectionBase *sec) { in isReserved()
188 void MarkLive<ELFT>::enqueue(InputSectionBase *sec, uint64_t offset) { in enqueue()
[all …]
DCallGraphSort.cpp81 DenseMap<const InputSectionBase *, int> run();
85 std::vector<const InputSectionBase *> sections;
97 std::pair<const InputSectionBase *, const InputSectionBase *>;
104 DenseMap<const InputSectionBase *, int> secToCluster; in CallGraphSort()
106 auto getOrCreateNode = [&](const InputSectionBase *isec) -> int { in CallGraphSort()
117 const auto *fromSB = cast<InputSectionBase>(c.first.first->repl); in CallGraphSort()
118 const auto *toSB = cast<InputSectionBase>(c.first.second->repl); in CallGraphSort()
181 DenseMap<const InputSectionBase *, int> CallGraphSort::run() { in run()
224 DenseMap<const InputSectionBase *, int> orderMap; in run()
267 DenseMap<const InputSectionBase *, int> elf::computeCallGraphProfileOrder() { in computeCallGraphProfileOrder()
DLinkerScript.cpp348 bool LinkerScript::shouldKeep(InputSectionBase *s) { in shouldKeep()
360 static bool matchConstraints(ArrayRef<InputSectionBase *> sections, in matchConstraints()
366 sections, [](InputSectionBase *sec) { return sec->flags & SHF_WRITE; }); in matchConstraints()
372 static void sortSections(MutableArrayRef<InputSectionBase *> vec, in sortSections()
374 auto alignmentComparator = [](InputSectionBase *a, InputSectionBase *b) { in sortSections()
380 auto nameComparator = [](InputSectionBase *a, InputSectionBase *b) { in sortSections()
383 auto priorityComparator = [](InputSectionBase *a, InputSectionBase *b) { in sortSections()
411 static void sortInputSections(MutableArrayRef<InputSectionBase *> vec, in sortInputSections()
425 std::vector<InputSectionBase *>
427 ArrayRef<InputSectionBase *> sections) { in computeInputSections()
[all …]
DInputSection.h104 class InputSectionBase : public SectionBase {
107 InputSectionBase(ObjFile<ELFT> &file, const typename ELFT::Shdr &header,
110 InputSectionBase(InputFile *file, uint64_t flags, uint32_t type,
171 InputSectionBase *nextInSectionGroup = nullptr;
270 class MergeInputSection : public InputSectionBase {
313 EhSectionPiece(size_t off, InputSectionBase *sec, uint32_t size, in EhSectionPiece()
323 InputSectionBase *sec;
329 class EhInputSection : public InputSectionBase {
349 class InputSection : public InputSectionBase {
373 InputSectionBase *getRelocatedSection() const;
[all …]
DInputSection.cpp43 std::vector<InputSectionBase *> elf::inputSections;
47 std::string lld::toString(const InputSectionBase *sec) { in toString()
59 InputSectionBase::InputSectionBase(InputFile *file, uint64_t flags, in InputSectionBase() function in InputSectionBase
124 InputSectionBase::InputSectionBase(ObjFile<ELFT> &file, in InputSectionBase() function in InputSectionBase
127 : InputSectionBase(&file, getFlags(hdr.sh_flags), in InputSectionBase()
138 size_t InputSectionBase::getSize() const { in getSize()
146 void InputSectionBase::uncompress() const { in uncompress()
162 uint64_t InputSectionBase::getOffsetInFile() const { in getOffsetInFile()
213 void InputSectionBase::parseCompressedHeader() { in parseCompressedHeader()
278 InputSection *InputSectionBase::getLinkOrderDep() const { in getLinkOrderDep()
[all …]
DLinkerScript.h34 class InputSectionBase; variable
193 std::vector<InputSectionBase *> sectionBases;
265 std::vector<InputSectionBase *>
267 ArrayRef<InputSectionBase *>);
269 std::vector<InputSectionBase *> createInputSectionList(OutputSection &cmd);
301 void discard(InputSectionBase *s);
313 bool shouldKeep(InputSectionBase *s);
347 std::vector<const InputSectionBase *> orphanSections;
DCallGraphSort.h16 class InputSectionBase; variable
18 llvm::DenseMap<const InputSectionBase *, int> computeCallGraphProfileOrder();
DEhFrame.h16 class InputSectionBase; variable
19 size_t readEhRecordSize(InputSectionBase *s, size_t off);
DOutputSections.h26 class InputSectionBase; variable
74 void recordSection(InputSectionBase *isec);
107 void sort(llvm::function_ref<int(InputSectionBase *s)> order);
DInputFiles.h80 ArrayRef<InputSectionBase *> getSections() const { in getSections()
112 std::string getSrcMsg(const Symbol &sym, InputSectionBase &sec,
148 std::vector<InputSectionBase *> sections;
227 llvm::Optional<llvm::DILineInfo> getDILineInfo(InputSectionBase *, uint64_t);
264 InputSectionBase *getRelocTarget(const Elf_Shdr &sec);
265 InputSectionBase *createInputSection(const Elf_Shdr &sec);
DWriter.h22 class InputSectionBase; variable
54 llvm::StringRef getOutputSectionName(const InputSectionBase *s);
DEhFrame.cpp38 EhReader(InputSectionBase *s, ArrayRef<uint8_t> d) : isec(s), d(d) {} in EhReader()
56 InputSectionBase *isec;
61 size_t elf::readEhRecordSize(InputSectionBase *s, size_t off) { in readEhRecordSize()
DRelocations.cpp90 static std::string getLocation(InputSectionBase &s, const Symbol &sym, in getLocation()
166 InputSectionBase &c, uint64_t offset, in handleMipsTlsRelocation()
190 handleTlsRelocation(RelType type, Symbol &sym, InputSectionBase &c, in handleTlsRelocation()
402 InputSectionBase &s, uint64_t relOff) { in isStaticLinkTimeConstant()
625 InputSectionBase &sec, RelExpr expr, in computeMipsAddend()
660 InputSectionBase &sec, RelExpr expr, in computeAddend()
720 InputSectionBase *sec;
888 InputSectionBase &sec = *l.sec; in reportUndefinedSymbol()
946 static bool maybeReportUndefined(Symbol &sym, InputSectionBase &sec, in maybeReportUndefined()
1012 explicit OffsetGetter(InputSectionBase &sec) { in OffsetGetter()
[all …]
DOutputSections.cpp100 void OutputSection::recordSection(InputSectionBase *isec) { in recordSection()
174 for (InputSectionBase *s : cmd->sectionBases) { in finalizeInputSections()
224 llvm::function_ref<int(InputSectionBase *s)> order) { in sortByOrder()
244 void OutputSection::sort(llvm::function_ref<int(InputSectionBase *s)> order) { in sort()
391 ArrayRef<InputSectionBase *> sections = section->file->getSections(); in finalizeShtGroup()
427 InputSectionBase *s = first->getRelocatedSection(); in finalize()
527 sort([](InputSectionBase *s) { return getPriority(s->name); }); in sortInitFini()
DWriter.cpp58 void forEachRelSec(llvm::function_ref<void(InputSectionBase &)> fn);
98 StringRef elf::getOutputSectionName(const InputSectionBase *s) { in getOutputSectionName()
106 if (InputSectionBase *rel = isec->getRelocatedSection()) { in getOutputSectionName()
185 std::vector<InputSectionBase *> newSections; in copySectionsIntoPartitions()
187 for (InputSectionBase *s : inputSections) { in copySectionsIntoPartitions()
190 InputSectionBase *copy; in copySectionsIntoPartitions()
208 for (InputSectionBase *&s : inputSections) { in combineEhSections()
224 std::vector<InputSectionBase *> &v = inputSections; in combineEhSections()
690 for (InputSectionBase *s : f->getSections()) { in markUsedLocalSymbols()
754 if (isa<InputSectionBase>(sec) && !sec->isLive()) in includeInSymtab()
[all …]
DDWARF.h23 InputSectionBase *sec = nullptr;
85 llvm::Optional<llvm::RelocAddrEntry> findAux(const InputSectionBase &sec,
DInputFiles.cpp246 InputSectionBase &sec, uint64_t offset) { in getSrcMsgAux()
261 std::string InputFile::getSrcMsg(const Symbol &sym, InputSectionBase &sec, in getSrcMsg()
313 Optional<DILineInfo> ObjFile<ELFT>::getDILineInfo(InputSectionBase *s, in getDILineInfo()
317 ArrayRef<InputSectionBase *> sections = s->file->getSections(); in getDILineInfo()
527 static void handleSectionGroup(ArrayRef<InputSectionBase *> sections, in handleSectionGroup()
533 if (InputSectionBase *s = sections[index]) in handleSectionGroup()
546 InputSectionBase *head; in handleSectionGroup()
547 InputSectionBase *prev = nullptr; in handleSectionGroup()
549 InputSectionBase *s = sections[index]; in handleSectionGroup()
678 InputSectionBase *linkSec = nullptr; in initializeSections()
[all …]
DRelocations.h21 class InputSectionBase; variable
125 template <class ELFT> void scanRelocations(InputSectionBase &);
DConfig.h30 class InputSectionBase; variable
137 llvm::MapVector<std::pair<const InputSectionBase *, const InputSectionBase *>,
DSyntheticSections.h44 InputSectionBase::Synthetic) {
58 return d->kind() == InputSectionBase::Synthetic; in classof()
428 DynamicReloc(RelType type, const InputSectionBase *inputSec, in DynamicReloc()
435 DynamicReloc(RelType type, const InputSectionBase *inputSec, in DynamicReloc()
452 const InputSectionBase *inputSec = nullptr;
496 void addReloc(RelType dynType, InputSectionBase *isec, uint64_t offsetInSec,
500 void addReloc(RelType dynType, InputSectionBase *inputSec,
549 const InputSectionBase *inputSec;
1162 uint64_t size, InputSectionBase &section);
DDWARF.cpp34 InputSectionBase *sec = it.value(); in LLDDwarfObj()
107 LLDDwarfObj<ELFT>::findAux(const InputSectionBase &sec, uint64_t pos, in findAux()
DThunks.h44 InputSectionBase &section);
DDriver.cpp809 auto findSection = [&](StringRef name) -> InputSectionBase * { in readCallGraph()
819 return dyn_cast_or_null<InputSectionBase>(dr->section); in readCallGraph()
833 if (InputSectionBase *from = findSection(fields[0])) in readCallGraph()
834 if (InputSectionBase *to = findSection(fields[1])) in readCallGraph()
849 auto *from = dyn_cast_or_null<InputSectionBase>(fromSym->section); in readCallGraphsFromObjectFiles()
850 auto *to = dyn_cast_or_null<InputSectionBase>(toSym->section); in readCallGraphsFromObjectFiles()
1796 static void readSymbolPartitionSection(InputSectionBase *s) { in readSymbolPartitionSection()
2204 for (InputSectionBase *s : f->getSections()) in link()
2208 for (InputSectionBase *s : f->getSections()) in link()
2214 llvm::erase_if(inputSections, [](InputSectionBase *s) { in link()
[all …]
DSymbols.cpp618 InputSectionBase *errSec, uint64_t errOffset) { in reportDuplicate()
636 auto *sec1 = cast<InputSectionBase>(d->section); in reportDuplicate()
688 dyn_cast_or_null<InputSectionBase>(other.section), in resolveDefined()
DSyntheticSections.cpp108 for (InputSectionBase *sec : inputSections) { in create()
174 std::vector<InputSectionBase *> sections; in create()
175 for (InputSectionBase *sec : inputSections) in create()
183 for (InputSectionBase *sec : sections) { in create()
231 std::vector<InputSectionBase *> sections; in create()
232 for (InputSectionBase *sec : inputSections) in create()
240 for (InputSectionBase *sec : sections) { in create()
266 uint64_t size, InputSectionBase &section) { in addSyntheticLocal()
1579 void RelocationBaseSection::addReloc(RelType dynType, InputSectionBase *isec, in addReloc()
1585 InputSectionBase *inputSec, in addReloc()
[all …]

12