/external/llvm-project/lld/wasm/ |
D | OutputSections.h | 21 class OutputSection; variable 23 std::string toString(const wasm::OutputSection §ion); 29 class OutputSection { 31 OutputSection(uint32_t type, std::string name = "") 33 virtual ~OutputSection() = default; 59 class CodeSection : public OutputSection { 62 : OutputSection(llvm::wasm::WASM_SEC_CODE), functions(functions) {} in CodeSection() 64 static bool classof(const OutputSection *sec) { in classof() 82 class DataSection : public OutputSection { 85 : OutputSection(llvm::wasm::WASM_SEC_DATA), segments(segments) {} in DataSection() [all …]
|
D | MapFile.h | 16 class OutputSection; variable 17 void writeMapFile(llvm::ArrayRef<OutputSection *> outputSections);
|
D | SyntheticSections.h | 36 class SyntheticSection : public OutputSection { 39 : OutputSection(type, name), bodyOutputStream(body) { in OutputSection() function 342 RelocSection(StringRef name, OutputSection *sec) in RelocSection() 349 OutputSection *sec;
|
/external/llvm-project/lld/ELF/ |
D | OutputSections.cpp | 38 OutputSection *Out::elfHeader; 39 OutputSection *Out::programHeaders; 40 OutputSection *Out::preinitArray; 41 OutputSection *Out::initArray; 42 OutputSection *Out::finiArray; 44 std::vector<OutputSection *> elf::outputSections; 46 uint32_t OutputSection::getPhdrFlags() const { in getPhdrFlags() 58 void OutputSection::writeHeaderTo(typename ELFT::Shdr *shdr) { in writeHeaderTo() 71 OutputSection::OutputSection(StringRef name, uint32_t type, uint64_t flags) in OutputSection() function in OutputSection 100 void OutputSection::recordSection(InputSectionBase *isec) { in recordSection() [all …]
|
D | OutputSections.h | 32 class OutputSection final : public BaseCommand, public SectionBase { 34 OutputSection(StringRef name, uint32_t type, uint64_t flags); 62 OutputSection *relocationSection = nullptr; 121 InputSection *getFirstInputSection(const OutputSection *os); 122 std::vector<InputSection *> getInputSections(const OutputSection *os); 131 static OutputSection *elfHeader; 132 static OutputSection *programHeaders; 133 static OutputSection *preinitArray; 134 static OutputSection *initArray; 135 static OutputSection *finiArray; [all …]
|
D | LinkerScript.cpp | 53 OutputSection *os = sec->getOutputSection(); in getOutputSectionVA() 80 OutputSection *LinkerScript::createOutputSection(StringRef name, in createOutputSection() 82 OutputSection *&secRef = nameToOutputSection[name]; in createOutputSection() 83 OutputSection *sec; in createOutputSection() 88 sec = make<OutputSection>(name, SHT_PROGBITS, 0); in createOutputSection() 96 OutputSection *LinkerScript::getOrCreateOutputSection(StringRef name) { in getOrCreateOutputSection() 97 OutputSection *&cmdRef = nameToOutputSection[name]; in getOrCreateOutputSection() 99 cmdRef = make<OutputSection>(name, SHT_PROGBITS, 0); in getOrCreateOutputSection() 228 for (BaseCommand *sub_base : cast<OutputSection>(base)->sectionCommands) in getSymbolAssignmentValues() 263 auto *to = dyn_cast<OutputSection>(base); in processInsertCommands() [all …]
|
D | LinkerScript.h | 35 class OutputSection; variable 230 OutputSection *os; 251 OutputSection *outSec = nullptr; 257 llvm::DenseMap<StringRef, OutputSection *> nameToOutputSection; 269 std::vector<InputSectionBase *> createInputSectionList(OutputSection &cmd); 271 void discardSynthetic(OutputSection &); 273 std::vector<size_t> getPhdrIndices(OutputSection *sec); 275 MemoryRegion *findMemoryRegion(OutputSection *sec); 277 void switchTo(OutputSection *sec); 281 void assignOffsets(OutputSection *sec); [all …]
|
D | Writer.cpp | 87 void addStartStopSymbols(OutputSection *sec); 107 OutputSection *out = rel->getOutputSection(); in getOutputSectionName() 178 for (OutputSection *sec : outputSections) in removeEmptyPTLoad() 335 static OutputSection *findSection(StringRef name, unsigned partition = 1) { in findSection() 337 if (auto *sec = dyn_cast<OutputSection>(base)) in findSection() 363 Out::programHeaders = make<OutputSection>("", 0, SHF_ALLOC); in createSyntheticSections() 601 for (OutputSection *sec : outputSections) in run() 622 for (OutputSection *sec : outputSections) in run() 797 auto *sec = dyn_cast<OutputSection>(base); in addSectionSymbols() 835 static bool isRelroSection(const OutputSection *sec) { in isRelroSection() [all …]
|
D | Relocations.h | 22 class OutputSection; variable 129 void hexagonTLSSymbolUpdate(ArrayRef<OutputSection *> outputSections); 130 bool hexagonNeedsTLSSymbol(ArrayRef<OutputSection *> outputSections); 139 bool createThunks(ArrayRef<OutputSection *> outputSections); 147 void mergeThunks(ArrayRef<OutputSection *> outputSections); 149 ThunkSection *getISDThunkSec(OutputSection *os, InputSection *isec, 155 void createInitialThunkSections(ArrayRef<OutputSection *> outputSections); 160 ThunkSection *addThunkSection(OutputSection *os, InputSectionDescription *,
|
D | Writer.h | 21 class OutputSection; variable 35 void add(OutputSection *sec); 46 OutputSection *firstSec = nullptr; 47 OutputSection *lastSec = nullptr;
|
D | ScriptParser.cpp | 91 bool readSectionDirective(OutputSection *cmd, StringRef tok1, StringRef tok2); 92 void readSectionAddressType(OutputSection *cmd); 93 OutputSection *readOverlaySectionDescription(); 94 OutputSection *readOutputSectionDescription(StringRef outSec); 518 OutputSection *prev = nullptr; in readOverlay() 522 OutputSection *os = readOverlaySectionDescription(); in readOverlay() 539 max = std::max(max, cast<OutputSection>(cmd)->size); in readOverlay() 580 if (auto *os = dyn_cast<OutputSection>(cmd)) in readSections() 769 bool ScriptParser::readSectionDirective(OutputSection *cmd, StringRef tok1, StringRef tok2) { in readSectionDirective() 798 void ScriptParser::readSectionAddressType(OutputSection *cmd) { in readSectionAddressType() [all …]
|
D | MapFile.cpp | 90 OutputSection *osec = syms[i]->getOutputSection(); in getSymbolStrings() 133 const OutputSection *osec = sec->getOutputSection(); in printEhFrame() 166 OutputSection* osec = nullptr; in writeMapFile() 177 osec = cast<OutputSection>(base); in writeMapFile()
|
D | Relocations.cpp | 599 OutputSection *osec = (isRO ? in.bssRelRo : in.bss)->getParent(); in addCopyRelSymbol() 1583 ArrayRef<OutputSection *> outputSections, in forEachInputSectionDescription() 1584 llvm::function_ref<void(OutputSection *, InputSectionDescription *)> fn) { in forEachInputSectionDescription() argument 1585 for (OutputSection *os : outputSections) { in forEachInputSectionDescription() 1685 void ThunkCreator::mergeThunks(ArrayRef<OutputSection *> outputSections) { in mergeThunks() 1687 outputSections, [&](OutputSection *os, InputSectionDescription *isd) { in mergeThunks() 1724 ThunkSection *ThunkCreator::getISDThunkSec(OutputSection *os, InputSection *isec, in getISDThunkSec() 1759 OutputSection *tos = isec->getParent(); in getISThunkSec() 1796 ArrayRef<OutputSection *> outputSections) { in createInitialThunkSections() 1800 outputSections, [&](OutputSection *os, InputSectionDescription *isd) { in createInitialThunkSections() [all …]
|
/external/llvm-project/lld/MachO/ |
D | OutputSegment.h | 30 class OutputSection; variable 35 const OutputSection *firstSection() const { return sections.front(); } in firstSection() 36 const OutputSection *lastSection() const { return sections.back(); } in lastSection() 38 void addOutputSection(OutputSection *os); 40 llvm::function_ref<bool(OutputSection *, OutputSection *)> comparator) { in sortOutputSections() argument 44 const std::vector<OutputSection *> &getSections() const { return sections; } in getSections() 54 std::vector<OutputSection *> sections;
|
D | MergedOutputSection.h | 24 class MergedOutputSection : public OutputSection { 26 MergedOutputSection(StringRef name) : OutputSection(MergedKind, name) {} in MergedOutputSection() 42 static bool classof(const OutputSection *sec) { in classof()
|
D | OutputSection.h | 25 class OutputSection { 32 OutputSection(Kind kind, StringRef name) : name(name), sectionKind(kind) {} in OutputSection() function 33 virtual ~OutputSection() = default;
|
D | OutputSegment.cpp | 41 for (const OutputSection *osec : sections) { in numNonHiddenSections() 47 void OutputSegment::addOutputSection(OutputSection *osec) { in addOutputSection()
|
D | InputSection.h | 22 class OutputSection; variable 52 OutputSection *parent = nullptr;
|
/external/llvm-project/lld/COFF/ |
D | Writer.cpp | 85 static std::vector<OutputSection *> outputSections; 87 OutputSection *Chunk::getOutputSection() const { in getOutputSection() 91 void OutputSection::clear() { outputSections.clear(); } in clear() 110 OutputSection *os = c->getOutputSection(); in writeTo() 251 OutputSection *findSection(StringRef name); 283 OutputSection *textSec; 284 OutputSection *rdataSec; 285 OutputSection *buildidSec; 286 OutputSection *dataSec; 287 OutputSection *pdataSec; [all …]
|
D | Writer.h | 39 class OutputSection { 41 OutputSection(llvm::StringRef n, uint32_t chars) : name(n) { in OutputSection() function 46 void merge(OutputSection *other);
|
D | LLDMapFile.h | 16 class OutputSection; variable 17 void writeLLDMapFile(llvm::ArrayRef<OutputSection *> outputSections);
|
D | MapFile.h | 16 class OutputSection; variable 17 void writeMapFile(llvm::ArrayRef<OutputSection *> outputSections);
|
D | PDB.h | 26 class OutputSection; variable 31 llvm::ArrayRef<OutputSection *> outputSections,
|
D | Chunks.cpp | 69 static bool checkSecRel(const SectionChunk *sec, OutputSection *os) { in checkSecRel() 79 OutputSection *os, uint64_t s) { in applySecRel() 90 static void applySecIdx(uint8_t *off, OutputSection *os) { in applySecIdx() 100 void SectionChunk::applyRelX64(uint8_t *off, uint16_t type, OutputSection *os, in applyRelX64() 120 void SectionChunk::applyRelX86(uint8_t *off, uint16_t type, OutputSection *os, in applyRelX86() 183 void SectionChunk::applyRelARM(uint8_t *off, uint16_t type, OutputSection *os, in applyRelARM() 250 OutputSection *os, uint64_t s) { in applySecRelLow12A() 256 OutputSection *os, uint64_t s) { in applySecRelHigh12A() 269 OutputSection *os, uint64_t s) { in applySecRelLdr() 292 void SectionChunk::applyRelARM64(uint8_t *off, uint16_t type, OutputSection *os, in applyRelARM64() [all …]
|
/external/llvm-project/lld/docs/ELF/ |
D | linker_script.rst | 54 When an *OutputSection* *S* has ``address``, LLD will set sh_addr to ``address``. 67 sh_addralign of an *OutputSection* *S* is the maximum of 71 When an *OutputSection* *S* has both ``address`` and ``ALIGN(section_align)``, 87 the previous OutputSection a new loadable segment will be generated.
|