Lines Matching defs:SectionID
648 unsigned SectionID, relocation_iterator RelI,
661 Address = uint64_t(Sections[Value.SectionID].getLoadAddress());
664 uint64_t SourceAddress = Sections[SectionID].getLoadAddressWithOffset(Offset);
667 resolveRelocation(Sections[SectionID], Offset, Address, RelI->getType(),
672 void RuntimeDyldELF::resolveLoongArch64Branch(unsigned SectionID,
678 if (resolveLoongArch64ShortBranch(SectionID, RelI, Value))
681 SectionEntry &Section = Sections[SectionID];
698 RelocationEntry LU12I_W(SectionID, StubTargetAddr - Section.getAddress(),
700 RelocationEntry ORI(SectionID, StubTargetAddr - Section.getAddress() + 4,
702 RelocationEntry LU32I_D(SectionID, StubTargetAddr - Section.getAddress() + 8,
704 RelocationEntry LU52I_D(SectionID, StubTargetAddr - Section.getAddress() + 12,
712 addRelocationForSection(LU12I_W, Value.SectionID);
713 addRelocationForSection(ORI, Value.SectionID);
714 addRelocationForSection(LU32I_D, Value.SectionID);
716 addRelocationForSection(LU52I_D, Value.SectionID);
867 // Set a default SectionID in case we do not find a TOC section below.
873 Rel.SectionID = 0;
889 Rel.SectionID = *SectionIDOrErr;
973 Rel.SectionID = *SectionIDOrErr;
1228 SID SectionID) {
1278 getSectionLoadAddress(Reloc.SectionID) + Reloc.Offset;
1280 uint64_t Symbol = getSectionLoadAddress(MatchingValue.SectionID) +
1342 // The target location for the relocation is described by RE.SectionID and
1343 // RE.Offset. RE.SectionID can be used to find the SectionEntry. Each
1364 const SectionEntry &Section = Sections[RE.SectionID];
1366 RE.SymOffset, RE.SectionID);
1372 uint64_t SymOffset, SID SectionID) {
1412 resolveRISCVRelocation(Section, Offset, Value, Type, Addend, SectionID);
1419 void *RuntimeDyldELF::computePlaceholderAddress(unsigned SectionID,
1421 return (void *)(Sections[SectionID].getObjAddress() + Offset);
1424 void RuntimeDyldELF::processSimpleRelocation(unsigned SectionID, uint64_t Offset, unsigned RelType, RelocationValueRef Value) {
1425 RelocationEntry RE(SectionID, Offset, RelType, Value.Addend, Value.Offset);
1429 addRelocationForSection(RE, Value.SectionID);
1465 unsigned SectionID, relocation_iterator RelI,
1481 TargetSectionID = Value.SectionID;
1487 if (TargetSectionID != SectionID)
1498 RelocationEntry RE(SectionID, SourceOffset, RelI->getType(), Value.Addend);
1502 addRelocationForSection(RE, Value.SectionID);
1507 void RuntimeDyldELF::resolveAArch64Branch(unsigned SectionID,
1513 SectionEntry &Section = Sections[SectionID];
1523 } else if (!resolveAArch64ShortBranch(SectionID, RelI, Value)) {
1530 RelocationEntry REmovz_g3(SectionID, StubTargetAddr - Section.getAddress(),
1532 RelocationEntry REmovk_g2(SectionID,
1535 RelocationEntry REmovk_g1(SectionID,
1538 RelocationEntry REmovk_g0(SectionID,
1548 addRelocationForSection(REmovz_g3, Value.SectionID);
1549 addRelocationForSection(REmovk_g2, Value.SectionID);
1550 addRelocationForSection(REmovk_g1, Value.SectionID);
1551 addRelocationForSection(REmovk_g0, Value.SectionID);
1562 unsigned SectionID, relocation_iterator RelI, const ObjectFile &O,
1602 Value.SectionID = SymInfo.getSectionID();
1625 Value.SectionID = *SectionIDOrErr;
1654 LLVM_DEBUG(dbgs() << "\t\tSectionID: " << SectionID << " Offset: " << Offset
1660 resolveAArch64Branch(SectionID, Value, RelI, Stubs);
1665 resolveGOTOffsetRelocation(SectionID, Offset, GOTOffset + Addend,
1670 resolveGOTOffsetRelocation(SectionID, Offset, GOTOffset + Addend,
1673 processSimpleRelocation(SectionID, Offset, RelType, Value);
1680 SectionEntry &Section = Sections[SectionID];
1695 RelocationEntry RE(SectionID, StubTargetAddr - Section.getAddress(),
1700 addRelocationForSection(RE, Value.SectionID);
1710 reinterpret_cast<uint32_t*>(computePlaceholderAddress(SectionID, Offset));
1718 processSimpleRelocation(SectionID, Offset, RelType, Value);
1722 resolveLoongArch64Branch(SectionID, Value, RelI, Stubs);
1726 resolveGOTOffsetRelocation(SectionID, Offset, GOTOffset + Addend,
1729 processSimpleRelocation(SectionID, Offset, RelType, Value);
1733 computePlaceholderAddress(SectionID, Offset));
1738 SectionEntry &Section = Sections[SectionID];
1750 RelocationEntry RE(SectionID, Offset, RelType, i->second);
1751 addRelocationForSection(RE, SectionID);
1764 RelocationEntry REHi(SectionID, StubTargetAddr - Section.getAddress(),
1766 RelocationEntry RELo(SectionID,
1774 addRelocationForSection(REHi, Value.SectionID);
1775 addRelocationForSection(RELo, Value.SectionID);
1778 RelocationEntry RE(SectionID, Offset, RelType, Section.getStubOffset());
1779 addRelocationForSection(RE, SectionID);
1784 RelocationEntry RE(SectionID, Offset, RelType, Addend);
1793 SectionID == Reloc.SectionID) {
1798 addRelocationForSection(Reloc, Value.SectionID);
1803 RelocationEntry RE(SectionID, Offset, RelType, Addend);
1807 addRelocationForSection(RE, Value.SectionID);
1819 processSimpleRelocation(SectionID, Offset, RelType, Value);
1823 RelocationEntry RE(SectionID, Offset, RelType, Value.Addend);
1833 addRelocationForSection(RE, Value.SectionID);
1837 SectionEntry &Section = Sections[SectionID];
1842 RelocationEntry RE(SectionID, Offset, RelType, i->second);
1843 addRelocationForSection(RE, SectionID);
1857 RelocationEntry REHi(SectionID, StubTargetAddr - Section.getAddress(),
1859 RelocationEntry RELo(SectionID,
1866 addRelocationForSection(REHi, Value.SectionID);
1867 addRelocationForSection(RELo, Value.SectionID);
1872 RelocationEntry REHighest(SectionID,
1875 RelocationEntry REHigher(SectionID,
1878 RelocationEntry REHi(SectionID,
1881 RelocationEntry RELo(SectionID,
1890 addRelocationForSection(REHighest, Value.SectionID);
1891 addRelocationForSection(REHigher, Value.SectionID);
1892 addRelocationForSection(REHi, Value.SectionID);
1893 addRelocationForSection(RELo, Value.SectionID);
1896 RelocationEntry RE(SectionID, Offset, RelType, Section.getStubOffset());
1897 addRelocationForSection(RE, SectionID);
1901 processSimpleRelocation(SectionID, Offset, RelType, Value);
1913 SectionEntry &Section = Sections[SectionID];
1927 if (Value.SectionID == SectionID){
1933 Sections[Value.SectionID].getAddressWithOffset(Value.Addend);
1939 (AbiVariant == 2 && Value.SectionID == SectionID)) {
1940 RelocationEntry RE(SectionID, Offset, RelType, Value.Addend);
1941 addRelocationForSection(RE, Value.SectionID);
1944 if (IsExtern || (AbiVariant == 2 && Value.SectionID != SectionID) ||
1962 RelocationEntry RE(SectionID, StubTargetAddr - Section.getAddress(),
1973 RelocationEntry REhst(SectionID, StubRelocOffset + 0,
1975 RelocationEntry REhr(SectionID, StubRelocOffset + 4,
1977 RelocationEntry REh(SectionID, StubRelocOffset + 12,
1979 RelocationEntry REl(SectionID, StubRelocOffset + 16,
1988 addRelocationForSection(REhst, Value.SectionID);
1989 addRelocationForSection(REhr, Value.SectionID);
1990 addRelocationForSection(REh, Value.SectionID);
1991 addRelocationForSection(REl, Value.SectionID);
2000 if (IsExtern || (AbiVariant == 2 && Value.SectionID != SectionID)) {
2037 if (Value.SymbolName || Value.SectionID != TOCValue.SectionID)
2040 resolveRelocation(Sections[SectionID], Offset, Value.Addend, RelType, 0);
2056 RelocationEntry RE(SectionID, Offset, RelType, Value.Addend);
2061 addRelocationForSection(RE, Value.SectionID);
2075 SectionEntry &Section = Sections[SectionID];
2094 RelocationEntry RE(SectionID, StubOffset + 8, ELF::R_390_64,
2099 addRelocationForSection(RE, Value.SectionID);
2129 SectionEntry *Section = &Sections[SectionID];
2153 Section = &Sections[SectionID];
2156 resolveGOTOffsetRelocation(SectionID, StubOffset + 2, GOTOffset - 4,
2170 computePlaceholderAddress(SectionID, Offset));
2171 processSimpleRelocation(SectionID, Offset, ELF::R_X86_64_PC32, Value);
2177 resolveGOTOffsetRelocation(SectionID, Offset, GOTOffset + Addend,
2186 addRelocationForSection(RE, Value.SectionID);
2190 resolveRelocation(Sections[SectionID], Offset, GOTOffset,
2199 addRelocationForSection(RE, Value.SectionID);
2205 resolveGOTOffsetRelocation(SectionID, Offset, Addend, ELF::R_X86_64_PC32);
2208 resolveGOTOffsetRelocation(SectionID, Offset, Addend, ELF::R_X86_64_PC64);
2212 processSimpleRelocation(SectionID, Offset, RelType, Value);
2214 Value.Addend += support::ulittle32_t::ref(computePlaceholderAddress(SectionID, Offset));
2215 processSimpleRelocation(SectionID, Offset, RelType, Value);
2218 computePlaceholderAddress(SectionID, Offset));
2219 processSimpleRelocation(SectionID, Offset, RelType, Value);
2221 processX86_64GOTTPOFFRelocation(SectionID, Offset, Value, Addend);
2227 processX86_64TLSRelocation(SectionID, Offset, RelType, Value, Addend,
2230 processSimpleRelocation(SectionID, Offset, RelType, Value);
2241 RelocationEntry RE(SectionID, Offset, RelType, Addend);
2244 processSimpleRelocation(SectionID, Offset, RelType, Value);
2248 computePlaceholderAddress(SectionID, Offset));
2250 processSimpleRelocation(SectionID, Offset, RelType, Value);
2255 void RuntimeDyldELF::processX86_64GOTTPOFFRelocation(unsigned SectionID,
2319 auto &Section = Sections[SectionID];
2345 RelocationEntry RE(SectionID,
2352 addRelocationForSection(RE, Value.SectionID);
2363 resolveGOTOffsetRelocation(SectionID, Offset, GOTOffset + Addend,
2370 addRelocationForSection(RE, Value.SectionID);
2375 unsigned SectionID, uint64_t Offset, uint64_t RelType,
2487 RelocationEntry RE(SectionID, Offset - TLSSequenceOffset + TpoffRelocOffset,
2492 addRelocationForSection(RE, Value.SectionID);
2562 auto &Section = Sections[SectionID];
2639 addRelocationForSection(RE, Value.SectionID);
2647 void RuntimeDyldELF::resolveGOTOffsetRelocation(unsigned SectionID,
2652 RelocationEntry GOTRE(SectionID, Offset, Type, GOTOffset);
2707 LLVM_DEBUG(dbgs() << "Creating IFunc stubs SectionID: "