|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Declarations
tools/lld/ELF/SyntheticSections.h 1173 extern InStruct in;
References
tools/lld/ELF/Arch/AArch64.cpp 191 write64le(buf, in.plt->getVA());
207 uint64_t got = in.gotPlt->getVA();
208 uint64_t plt = in.plt->getVA();
609 uint64_t got = in.gotPlt->getVA();
610 uint64_t plt = in.plt->getVA();
tools/lld/ELF/Arch/ARM.cpp 154 write32le(buf, in.plt->getVA());
175 uint64_t gotPlt = in.gotPlt->getVA();
176 uint64_t l1 = in.plt->getVA() + 8;
194 uint64_t offset = in.gotPlt->getVA() - in.plt->getVA() - 4;
194 uint64_t offset = in.gotPlt->getVA() - in.plt->getVA() - 4;
tools/lld/ELF/Arch/Hexagon.cpp 300 uint64_t off = in.gotPlt->getVA() - in.plt->getVA();
300 uint64_t off = in.gotPlt->getVA() - in.plt->getVA();
tools/lld/ELF/Arch/Mips.cpp 197 uint64_t va = in.plt->getVA();
249 uint64_t gotPlt = in.gotPlt->getVA();
250 uint64_t plt = in.plt->getVA();
302 uint64_t gotPlt = in.gotPlt->getVA();
tools/lld/ELF/Arch/PPC.cpp 83 uint32_t got = in.got->getVA();
84 uint32_t glink = in.plt->getVA(); // VA of .glink
87 uint32_t afterBcl = in.plt->getSize() - target->pltHeaderSize + 12;
168 write32(buf, in.plt->getVA() + 4 * s.pltIndex);
tools/lld/ELF/Arch/PPC64.cpp 68 uint64_t tocVA = in.got->getVA();
666 int64_t gotPltOffset = in.gotPlt->getVA() - (in.plt->getVA() + 8);
666 int64_t gotPltOffset = in.gotPlt->getVA() - (in.plt->getVA() + 8);
tools/lld/ELF/Arch/RISCV.cpp 139 write64le(buf, in.plt->getVA());
141 write32le(buf, in.plt->getVA());
153 uint32_t offset = in.gotPlt->getVA() - in.plt->getVA();
153 uint32_t offset = in.gotPlt->getVA() - in.plt->getVA();
tools/lld/ELF/Arch/X86.cpp 211 uint32_t gotPlt = in.gotPlt->getVA();
226 write32le(buf + 2, gotPltEntryAddr - in.gotPlt->getVA());
476 uint32_t ebx = in.gotPlt->getVA();
515 uint32_t gotPlt = in.gotPlt->getVA();
tools/lld/ELF/Arch/X86_64.cpp 152 uint64_t gotPlt = in.gotPlt->getVA();
153 uint64_t plt = in.plt->getVA();
625 uint64_t gotPlt = in.gotPlt->getVA();
626 uint64_t plt = in.plt->getVA();
tools/lld/ELF/Driver.cpp 100 memset(&in, 0, sizeof(in));
100 memset(&in, 0, sizeof(in));
tools/lld/ELF/InputFiles.cpp 806 if (in.armAttributes == nullptr) {
807 in.armAttributes = make<InputSection>(*this, sec, name);
808 return in.armAttributes;
tools/lld/ELF/InputSection.cpp 426 p->setSymbolAndType(in.symTab->getSymbolIndex(&sym), type,
665 return in.got->getVA() + a - p;
667 return in.gotPlt->getVA() + a - p;
670 return sym.getVA(a) - in.got->getVA();
672 return sym.getVA(a) - in.gotPlt->getVA();
675 return sym.getGotVA() + a - in.gotPlt->getVA();
687 return sym.getVA(a) - in.mipsGot->getGp(file);
689 return in.mipsGot->getGp(file) + a;
698 uint64_t v = in.mipsGot->getGp(file) + a - p;
709 return in.mipsGot->getVA() + in.mipsGot->getPageEntryOffset(file, sym, a) -
709 return in.mipsGot->getVA() + in.mipsGot->getPageEntryOffset(file, sym, a) -
710 in.mipsGot->getGp(file);
716 return in.mipsGot->getVA() + in.mipsGot->getSymEntryOffset(file, sym, a) -
716 return in.mipsGot->getVA() + in.mipsGot->getSymEntryOffset(file, sym, a) -
717 in.mipsGot->getGp(file);
719 return in.mipsGot->getVA() + in.mipsGot->getGlobalDynOffset(file, sym) -
719 return in.mipsGot->getVA() + in.mipsGot->getGlobalDynOffset(file, sym) -
720 in.mipsGot->getGp(file);
722 return in.mipsGot->getVA() + in.mipsGot->getTlsIndexOffset(file) -
722 return in.mipsGot->getVA() + in.mipsGot->getTlsIndexOffset(file) -
723 in.mipsGot->getGp(file);
801 return in.got->getGlobalDynAddr(sym) + a;
803 return in.got->getGlobalDynAddr(sym) + a - p;
805 return getAArch64Page(in.got->getGlobalDynAddr(sym) + a) -
808 return in.got->getGlobalDynOffset(sym) + a;
810 return in.got->getVA() + in.got->getGlobalDynOffset(sym) + a - in.gotPlt->getVA();
810 return in.got->getVA() + in.got->getGlobalDynOffset(sym) + a - in.gotPlt->getVA();
810 return in.got->getVA() + in.got->getGlobalDynOffset(sym) + a - in.gotPlt->getVA();
812 return in.got->getGlobalDynAddr(sym) + a - p;
814 return in.got->getVA() + in.got->getTlsIndexOff() + a - in.gotPlt->getVA();
814 return in.got->getVA() + in.got->getTlsIndexOff() + a - in.gotPlt->getVA();
814 return in.got->getVA() + in.got->getTlsIndexOff() + a - in.gotPlt->getVA();
816 return in.got->getTlsIndexOff() + a;
818 return in.got->getTlsIndexVA() + a - p;
tools/lld/ELF/LinkerScript.cpp 445 if (s == in.shStrTab || s == mainPart->relaDyn || s == mainPart->relrDyn)
tools/lld/ELF/OutputSections.cpp 346 os->link = in.symTab->getParent()->sectionIndex;
351 os->info = in.symTab->getSymbolIndex(symbols[section->info]);
380 link = in.symTab->getParent()->sectionIndex;
tools/lld/ELF/Relocations.cpp 137 in.mipsGot->addTlsIndex(*c.file);
142 in.mipsGot->addDynTlsEntry(*c.file, sym);
169 if (in.got->addDynTlsEntry(sym)) {
170 uint64_t off = in.got->getGlobalDynOffset(sym);
172 {target->tlsDescRel, in.got, off, !sym.isPreemptible, &sym, 0});
205 if (in.got->addTlsIndex()) {
207 in.got->relocations.push_back(
208 {R_ADDEND, target->symbolicRel, in.got->getTlsIndexOff(), 1, &sym});
210 mainPart->relaDyn->addReloc(target->tlsModuleIndexRel, in.got,
211 in.got->getTlsIndexOff(), nullptr);
229 in.got->addEntry(sym);
231 in.got->relocations.push_back(
241 if (in.got->addDynTlsEntry(sym)) {
242 uint64_t off = in.got->getGlobalDynOffset(sym);
246 in.got->relocations.push_back(
249 mainPart->relaDyn->addReloc(target->tlsModuleIndexRel, in.got, off, &sym);
255 mainPart->relaDyn->addReloc(target->tlsOffsetRel, in.got, offsetOff,
258 in.got->relocations.push_back(
272 in.got->addEntry(sym);
273 mainPart->relaDyn->addReloc(target->tlsGotRel, in.got, sym.getGotOffset(),
569 OutputSection *osec = (isRO ? in.bssRelRo : in.bss)->getParent();
569 OutputSection *osec = (isRO ? in.bssRelRo : in.bss)->getParent();
963 in.got->addEntry(sym);
978 in.got->relocations.push_back({expr, target->symbolicRel, off, 0, &sym});
985 addRelativeReloc(in.got, off, &sym, 0, R_ABS, target->symbolicRel);
989 sym.isTls() ? target->tlsGotRel : target->gotRel, in.got, off, &sym, 0,
1071 in.mipsGot->addEntry(*sec.file, sym, addend, expr);
1132 addPltEntry<ELFT>(in.plt, in.gotPlt, in.relaPlt, target->pltRel, sym);
1132 addPltEntry<ELFT>(in.plt, in.gotPlt, in.relaPlt, target->pltRel, sym);
1132 addPltEntry<ELFT>(in.plt, in.gotPlt, in.relaPlt, target->pltRel, sym);
1135 sym, in.plt,
1246 in.gotPlt->hasGotPltOffRel = true;
1249 in.got->hasGotOffRel = true;
1273 addPltEntry<ELFT>(in.plt, in.gotPlt, in.relaPlt, target->pltRel, sym);
1273 addPltEntry<ELFT>(in.plt, in.gotPlt, in.relaPlt, target->pltRel, sym);
1273 addPltEntry<ELFT>(in.plt, in.gotPlt, in.relaPlt, target->pltRel, sym);
1285 in.mipsGot->addEntry(*sec.file, sym, addend, expr);
1343 addPltEntry<ELFT>(in.iplt, in.igotPlt, in.relaIplt, target->iRelativeRel,
1343 addPltEntry<ELFT>(in.iplt, in.igotPlt, in.relaIplt, target->iRelativeRel,
1343 addPltEntry<ELFT>(in.iplt, in.igotPlt, in.relaIplt, target->iRelativeRel,
1362 d.section = in.iplt;
tools/lld/ELF/Symbols.cpp 147 return in.igotPlt->getVA() + getGotPltOffset();
148 return in.got->getVA() + getGotOffset();
155 return in.igotPlt->getVA() + getGotPltOffset();
156 return in.gotPlt->getVA() + getGotPltOffset();
171 PltSection *plt = isInIplt ? in.iplt : in.plt;
171 PltSection *plt = isInIplt ? in.iplt : in.plt;
184 return in.ppc64LongBranchTarget->getVA() +
tools/lld/ELF/SyntheticSections.cpp 162 reginfo.ri_gp_value = in.mipsGot->getGp();
219 reginfo.ri_gp_value = in.mipsGot->getGp();
267 if (in.symTab)
268 in.symTab->addSymbol(s);
1254 if (in.relaIplt->getParent() == relaDyn->getParent())
1255 size += in.relaIplt->getSize();
1256 if (in.relaPlt->getParent() == relaDyn->getParent())
1257 size += in.relaPlt->getSize();
1267 size_t size = in.relaPlt->getSize();
1268 if (in.relaIplt->getParent() == in.relaPlt->getParent() &&
1268 if (in.relaIplt->getParent() == in.relaPlt->getParent() &&
1269 in.relaIplt->name == in.relaPlt->name)
1269 in.relaIplt->name == in.relaPlt->name)
1270 size += in.relaIplt->getSize();
1351 (in.relaIplt->isNeeded() &&
1352 part.relaDyn->getParent() == in.relaIplt->getParent())) {
1383 if (isMain && (in.relaPlt->isNeeded() || in.relaIplt->isNeeded())) {
1383 if (isMain && (in.relaPlt->isNeeded() || in.relaIplt->isNeeded())) {
1384 addInSec(DT_JMPREL, in.relaPlt);
1388 addInSec(DT_MIPS_PLTGOT, in.gotPlt);
1391 addInSec(DT_PLTGOT, in.plt);
1394 addInSec(DT_PLTGOT, in.gotPlt);
1462 add(DT_MIPS_LOCAL_GOTNO, [] { return in.mipsGot->getLocalEntriesNum(); });
1464 if (const Symbol *b = in.mipsGot->getFirstGlobalEntry())
1468 addInSec(DT_PLTGOT, in.mipsGot);
1469 if (in.mipsRldMap) {
1471 addInSec(DT_MIPS_RLD_MAP, in.mipsRldMap);
1474 addInSecRelative(DT_MIPS_RLD_MAP_REL, in.mipsRldMap);
1481 add(DT_PPC_GOT, [] { return in.got->getVA(); });
1484 if (config->emachine == EM_PPC64 && in.plt->isNeeded()) {
1489 return in.plt->getVA(0) + offset;
1568 if (in.relaPlt == this)
1569 getParent()->info = in.gotPlt->getParent()->sectionIndex;
1570 if (in.relaIplt == this)
1571 getParent()->info = in.igotPlt->getParent()->sectionIndex;
2210 for (const SymbolTableEntry &entry : in.symTab->getSymbols()) {
2231 getParent()->link = in.symTab->getParent()->sectionIndex;
2235 return in.symTab->getNumSymbols() * 4;
2474 RelocationBaseSection *relSec = isIplt ? in.relaIplt : in.relaPlt;
2474 RelocationBaseSection *relSec = isIplt ? in.relaIplt : in.relaPlt;
2477 size_t pltOff = isIplt ? in.plt->getSize() : 0;
3581 i == partitions.size() - 1 ? in.partEnd : partitions[i + 1].elfHeader;
tools/lld/ELF/Thunks.cpp 302 in.ppc64LongBranchTarget->addEntry(dest);
304 {target->relativeRel, in.ppc64LongBranchTarget,
314 in.ppc64LongBranchTarget->addEntry(dest);
725 offset = destination.getGotPltVA() - (in.ppc32Got2->getParent()->getVA() +
730 offset = destination.getGotPltVA() - in.got->getVA();
tools/lld/ELF/Writer.cpp 329 in.shStrTab = make<StringTableSection>(".shstrtab", false);
335 in.strTab = make<StringTableSection>(".strtab", false);
336 in.symTab = make<SymbolTableSection<ELFT>>(*in.strTab);
336 in.symTab = make<SymbolTableSection<ELFT>>(*in.strTab);
337 in.symTabShndx = make<SymtabShndxSection>();
340 in.bss = make<BssSection>(".bss", 0, 1);
341 add(in.bss);
348 in.bssRelRo =
350 add(in.bssRelRo);
355 in.mipsRldMap = make<MipsRldMapSection>();
356 add(in.mipsRldMap);
453 in.partEnd = make<BssSection>(".part.end", config->maxPageSize, 1);
454 in.partEnd->partition = 255;
455 add(in.partEnd);
457 in.partIndex = make<PartitionIndexSection>();
458 addOptionalRegular("__part_index_begin", in.partIndex, 0);
459 addOptionalRegular("__part_index_end", in.partIndex,
460 in.partIndex->getSize());
461 add(in.partIndex);
467 in.mipsGot = make<MipsGotSection>();
468 add(in.mipsGot);
470 in.got = make<GotSection>();
471 add(in.got);
475 in.ppc32Got2 = make<PPC32Got2Section>();
476 add(in.ppc32Got2);
480 in.ppc64LongBranchTarget = make<PPC64LongBranchTargetSection>();
481 add(in.ppc64LongBranchTarget);
484 in.gotPlt = make<GotPltSection>();
485 add(in.gotPlt);
486 in.igotPlt = make<IgotPltSection>();
487 add(in.igotPlt);
493 in.gotPlt->hasGotPltOffRel = true;
495 in.got->hasGotOffRel = true;
503 in.relaPlt = make<RelocationSection<ELFT>>(
505 add(in.relaPlt);
513 in.relaIplt = make<RelocationSection<ELFT>>(
514 config->androidPackDynRelocs ? in.relaPlt->name : relaDynName,
516 add(in.relaIplt);
518 in.plt = make<PltSection>(false);
519 add(in.plt);
520 in.iplt = make<PltSection>(true);
521 add(in.iplt);
534 if (in.symTab)
535 add(in.symTab);
536 if (in.symTabShndx)
537 add(in.symTabShndx);
538 add(in.shStrTab);
539 if (in.strTab)
540 add(in.strTab);
678 if (!in.symTab)
695 in.symTab->addSymbol(b);
731 in.symTab->addSymbol(sym);
776 if (in.got && sec == in.got->getParent())
776 if (in.got && sec == in.got->getParent())
791 if (sec == in.gotPlt->getParent())
1041 InputSection *gotSection = in.gotPlt;
1043 gotSection = in.mipsGot ? cast<InputSection>(in.mipsGot)
1043 gotSection = in.mipsGot ? cast<InputSection>(in.mipsGot)
1044 : cast<InputSection>(in.got);
1049 if (ElfSym::relaIpltStart && in.relaIplt->isNeeded()) {
1050 ElfSym::relaIpltStart->section = in.relaIplt;
1051 ElfSym::relaIpltEnd->section = in.relaIplt;
1052 ElfSym::relaIpltEnd->value = in.relaIplt->getSize();
1577 if (in.mipsGot)
1578 in.mipsGot->updateAllocSize();
1753 if (in.plt && in.plt->isNeeded())
1753 if (in.plt && in.plt->isNeeded())
1754 in.plt->addSymbols();
1755 if (in.iplt && in.iplt->isNeeded())
1755 if (in.iplt && in.iplt->isNeeded())
1756 in.iplt->addSymbols();
1785 if (in.symTab)
1786 in.symTab->addSymbol(sym);
1811 if (in.mipsGot)
1812 in.mipsGot->build();
1839 sec->shName = in.shStrTab->addString(sec->name);
1875 finalizeSynthetic(in.bss);
1876 finalizeSynthetic(in.bssRelRo);
1877 finalizeSynthetic(in.symTabShndx);
1878 finalizeSynthetic(in.shStrTab);
1879 finalizeSynthetic(in.strTab);
1880 finalizeSynthetic(in.got);
1881 finalizeSynthetic(in.mipsGot);
1882 finalizeSynthetic(in.igotPlt);
1883 finalizeSynthetic(in.gotPlt);
1884 finalizeSynthetic(in.relaIplt);
1885 finalizeSynthetic(in.relaPlt);
1886 finalizeSynthetic(in.plt);
1887 finalizeSynthetic(in.iplt);
1888 finalizeSynthetic(in.ppc32Got2);
1889 finalizeSynthetic(in.partIndex);
1940 finalizeSynthetic(in.symTab);
1941 finalizeSynthetic(in.ppc64LongBranchTarget);
2573 uint32_t strTabIndex = in.shStrTab->getParent()->sectionIndex;