Home
last modified time | relevance | path

Searched refs:OutputSection (Results 1 – 25 of 60) sorted by relevance

123

/external/llvm-project/lld/wasm/
DOutputSections.h21 class OutputSection; variable
23 std::string toString(const wasm::OutputSection &section);
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 …]
DMapFile.h16 class OutputSection; variable
17 void writeMapFile(llvm::ArrayRef<OutputSection *> outputSections);
DSyntheticSections.h36 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/
DOutputSections.cpp38 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 …]
DOutputSections.h32 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 …]
DLinkerScript.cpp53 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 …]
DLinkerScript.h35 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 …]
DWriter.cpp87 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 …]
DRelocations.h22 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 *,
DWriter.h21 class OutputSection; variable
35 void add(OutputSection *sec);
46 OutputSection *firstSec = nullptr;
47 OutputSection *lastSec = nullptr;
DScriptParser.cpp91 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 …]
DMapFile.cpp90 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()
DRelocations.cpp599 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/
DOutputSegment.h30 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;
DMergedOutputSection.h24 class MergedOutputSection : public OutputSection {
26 MergedOutputSection(StringRef name) : OutputSection(MergedKind, name) {} in MergedOutputSection()
42 static bool classof(const OutputSection *sec) { in classof()
DOutputSection.h25 class OutputSection {
32 OutputSection(Kind kind, StringRef name) : name(name), sectionKind(kind) {} in OutputSection() function
33 virtual ~OutputSection() = default;
DOutputSegment.cpp41 for (const OutputSection *osec : sections) { in numNonHiddenSections()
47 void OutputSegment::addOutputSection(OutputSection *osec) { in addOutputSection()
DInputSection.h22 class OutputSection; variable
52 OutputSection *parent = nullptr;
/external/llvm-project/lld/COFF/
DWriter.cpp85 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 …]
DWriter.h39 class OutputSection {
41 OutputSection(llvm::StringRef n, uint32_t chars) : name(n) { in OutputSection() function
46 void merge(OutputSection *other);
DLLDMapFile.h16 class OutputSection; variable
17 void writeLLDMapFile(llvm::ArrayRef<OutputSection *> outputSections);
DMapFile.h16 class OutputSection; variable
17 void writeMapFile(llvm::ArrayRef<OutputSection *> outputSections);
DPDB.h26 class OutputSection; variable
31 llvm::ArrayRef<OutputSection *> outputSections,
DChunks.cpp69 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/
Dlinker_script.rst54 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.

123