/frameworks/compile/mclinker/lib/Target/AArch64/ |
H A D | AArch64Relocator.cpp | 34 typedef Relocator::Result (*ApplyFunctionType)(Relocation& pReloc, 151 void AArch64Relocator::scanLocalReloc(Relocation& pReloc, argument 154 ResolveInfo* rsym = pReloc.symInfo(); 155 switch (pReloc.type()) { 166 *pReloc.targetRef().frag(), 167 pReloc.targetRef().offset(), 170 getRelRelMap().record(pReloc, reloc); 182 *pReloc.targetRef().frag(), 183 pReloc.targetRef().offset(), 184 pReloc 215 scanGlobalReloc(Relocation& pReloc, IRBuilder& pBuilder, const LDSection& pSection) argument 374 scanRelocation(Relocation& pReloc, IRBuilder& pBuilder, Module& pModule, LDSection& pSection, Input& pInput) argument 441 applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset) argument 451 none(Relocation& pReloc, AArch64Relocator& pParent) argument 455 unsupported(Relocation& pReloc, AArch64Relocator& pParent) argument 462 abs(Relocation& pReloc, AArch64Relocator& pParent) argument 508 rel(Relocation& pReloc, AArch64Relocator& pParent) argument 541 add_abs_lo12(Relocation& pReloc, AArch64Relocator& pParent) argument 553 adr_prel_lo21(Relocation& pReloc, AArch64Relocator& pParent) argument 571 adr_prel_pg_hi21(Relocation& pReloc, AArch64Relocator& pParent) argument 591 call(Relocation& pReloc, AArch64Relocator& pParent) argument 620 condbr(Relocation& pReloc, AArch64Relocator& pParent) argument 649 adr_got_page(Relocation& pReloc, AArch64Relocator& pParent) argument 675 ld64_got_lo12(Relocation& pReloc, AArch64Relocator& pParent) argument 705 ldst_abs_lo12(Relocation& pReloc, AArch64Relocator& pParent) argument [all...] |
H A D | AArch64Relocator.h | 98 void scanRelocation(Relocation& pReloc, 106 virtual bool mayHaveFunctionPointerAccess(const Relocation& pReloc) const; 110 uint32_t getDebugStringOffset(Relocation& pReloc) const; 114 void applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset); 117 void scanLocalReloc(Relocation& pReloc, const LDSection& pSection); 119 void scanGlobalReloc(Relocation& pReloc,
|
H A D | AArch64LongBranchStub.cpp | 81 bool AArch64LongBranchStub::isMyDuty(const Relocation& pReloc, argument 84 assert((pReloc.type() == llvm::ELF::R_AARCH64_CALL26) || 85 (pReloc.type() == llvm::ELF::R_AARCH64_JUMP26)); 86 int64_t dest = pTargetSymValue + pReloc.addend();
|
H A D | AArch64LongBranchStub.h | 30 bool isMyDuty(const Relocation& pReloc,
|
/frameworks/compile/mclinker/lib/Target/ARM/ |
H A D | ARMRelocator.cpp | 29 static Relocator::DWord getThumbBit(const Relocation& pReloc) { argument 33 ((!pReloc.symInfo()->isUndef() || pReloc.symInfo()->isDyn()) && 34 (pReloc.symInfo()->type() == ResolveInfo::Function) && 35 ((pReloc.symValue() & 0x1) != 0)) 81 static ARMGOTEntry& helper_GOT_init(Relocation& pReloc, argument 85 ResolveInfo* rsym = pReloc.symInfo(); 125 static ARMPLT1& helper_PLT_init(Relocation& pReloc, ARMRelocator& pParent) { argument 127 ResolveInfo* rsym = pReloc.symInfo(); 149 // its FragmentRef to pReloc 151 helper_DynRel_init(Relocation& pReloc, Relocator::Type pType, ARMRelocator& pParent) argument 429 scanLocalReloc(Relocation& pReloc, const LDSection& pSection) argument 520 scanGlobalReloc(Relocation& pReloc, IRBuilder& pBuilder, const LDSection& pSection) argument 728 scanRelocation(Relocation& pReloc, IRBuilder& pBuilder, Module& pModule, LDSection& pSection, Input& pInput) argument 772 applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset) argument 782 none(Relocation& pReloc, ARMRelocator& pParent) argument 787 abs32(Relocation& pReloc, ARMRelocator& pParent) argument 824 rel32(Relocation& pReloc, ARMRelocator& pParent) argument 848 base_prel(Relocation& pReloc, ARMRelocator& pParent) argument 856 gotoff32(Relocation& pReloc, ARMRelocator& pParent) argument 869 got_brel(Relocation& pReloc, ARMRelocator& pParent) argument 887 got_prel(Relocation& pReloc, ARMRelocator& pParent) argument 906 thm_jump8(Relocation& pReloc, ARMRelocator& pParent) argument 924 thm_jump11(Relocation& pReloc, ARMRelocator& pParent) argument 942 thm_jump19(Relocation& pReloc, ARMRelocator& pParent) argument 987 call(Relocation& pReloc, ARMRelocator& pParent) argument 1040 thm_call(Relocation& pReloc, ARMRelocator& pParent) argument 1109 movw_abs_nc(Relocation& pReloc, ARMRelocator& pParent) argument 1138 movw_prel_nc(Relocation& pReloc, ARMRelocator& pParent) argument 1157 movt_abs(Relocation& pReloc, ARMRelocator& pParent) argument 1183 movt_prel(Relocation& pReloc, ARMRelocator& pParent) argument 1196 thm_movw_abs_nc(Relocation& pReloc, ARMRelocator& pParent) argument 1232 thm_movw_prel_nc(Relocation& pReloc, ARMRelocator& pParent) argument 1257 thm_movw_brel(Relocation& pReloc, ARMRelocator& pParent) argument 1281 thm_movt_abs(Relocation& pReloc, ARMRelocator& pParent) argument 1316 thm_movt_prel(Relocation& pReloc, ARMRelocator& pParent) argument 1337 prel31(Relocation& pReloc, ARMRelocator& pParent) argument 1362 tls(Relocation& pReloc, ARMRelocator& pParent) argument 1366 unsupported(Relocation& pReloc, ARMRelocator& pParent) argument [all...] |
H A D | ARMRelocator.h | 89 void scanRelocation(Relocation& pReloc, 97 virtual bool mayHaveFunctionPointerAccess(const Relocation& pReloc) const; 101 uint32_t getDebugStringOffset(Relocation& pReloc) const; 105 void applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset); 108 void scanLocalReloc(Relocation& pReloc, const LDSection& pSection); 110 void scanGlobalReloc(Relocation& pReloc, 114 void checkValidReloc(Relocation& pReloc) const;
|
H A D | ARMToARMStub.cpp | 61 bool ARMToARMStub::isMyDuty(const class Relocation& pReloc, argument 67 switch (pReloc.type()) { 73 uint64_t dest = pTargetSymValue + pReloc.addend() + 8u;
|
H A D | ARMToTHMStub.cpp | 63 bool ARMToTHMStub::isMyDuty(const class Relocation& pReloc, argument 69 switch (pReloc.type()) { 73 uint64_t dest = pTargetSymValue + pReloc.addend() + 8u;
|
H A D | THMToARMStub.cpp | 70 bool THMToARMStub::isMyDuty(const class Relocation& pReloc, argument 76 switch (pReloc.type()) { 80 uint64_t dest = pTargetSymValue + pReloc.addend() + 4u;
|
H A D | THMToTHMStub.cpp | 72 bool THMToTHMStub::isMyDuty(const class Relocation& pReloc, argument 78 switch (pReloc.type()) { 82 uint64_t dest = pTargetSymValue + pReloc.addend() + 4u;
|
/frameworks/compile/mclinker/lib/Target/X86/ |
H A D | X86Relocator.cpp | 59 static X86_32GOTEntry& helper_GOT_init(Relocation& pReloc, argument 63 ResolveInfo* rsym = pReloc.symInfo(); 92 static Relocator::Address helper_get_GOT_address(Relocation& pReloc, argument 94 X86_32GOTEntry* got_entry = pParent.getSymGOTMap().lookUp(*pReloc.symInfo()); 99 static PLTEntryBase& helper_PLT_init(Relocation& pReloc, argument 102 ResolveInfo* rsym = pReloc.symInfo(); 136 typedef Relocator::Result (*X86_32ApplyFunctionType)(Relocation& pReloc, 160 void X86Relocator::scanRelocation(Relocation& pReloc, argument 168 ResolveInfo* rsym = pReloc.symInfo(); 179 scanLocalReloc(pReloc, pLinke 311 scanLocalReloc(Relocation& pReloc, IRBuilder& pBuilder, Module& pModule, LDSection& pSection) argument 514 scanGlobalReloc(Relocation& pReloc, IRBuilder& pBuilder, Module& pModule, LDSection& pSection) argument 780 convertTLSIEtoLE(Relocation& pReloc, LDSection& pSection) argument 845 applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset) argument 855 none(Relocation& pReloc, X86_32Relocator& pParent) argument 862 abs(Relocation& pReloc, X86_32Relocator& pParent) argument 899 rel(Relocation& pReloc, X86_32Relocator& pParent) argument 933 gotoff32(Relocation& pReloc, X86_32Relocator& pParent) argument 943 gotpc32(Relocation& pReloc, X86_32Relocator& pParent) argument 952 got32(Relocation& pReloc, X86_32Relocator& pParent) argument 973 plt32(Relocation& pReloc, X86_32Relocator& pParent) argument 987 tls_gd(Relocation& pReloc, X86_32Relocator& pParent) argument 1018 tls_ldm(Relocation& pReloc, X86_32Relocator& pParent) argument 1033 tls_ldo_32(Relocation& pReloc, X86_32Relocator& pParent) argument 1042 tls_ie(Relocation& pReloc, X86_32Relocator& pParent) argument 1062 tls_gotie(Relocation& pReloc, X86_32Relocator& pParent) argument 1083 tls_le(Relocation& pReloc, X86_32Relocator& pParent) argument 1099 unsupported(Relocation& pReloc, X86_32Relocator& pParent) argument 1135 helper_GOT_init(Relocation& pReloc, bool pHasRel, X86_64Relocator& pParent) argument 1170 helper_get_GOT_address(Relocation& pReloc, X86_64Relocator& pParent) argument 1184 helper_PLT_init(Relocation& pReloc, X86_64Relocator& pParent) argument 1289 scanLocalReloc(Relocation& pReloc, IRBuilder& pBuilder, Module& pModule, LDSection& pSection) argument 1361 scanGlobalReloc(Relocation& pReloc, IRBuilder& pBuilder, Module& pModule, LDSection& pSection) argument 1514 applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset) argument 1523 none(Relocation& pReloc, X86_64Relocator& pParent) argument 1531 abs(Relocation& pReloc, X86_64Relocator& pParent) argument 1577 signed32(Relocation& pReloc, X86_64Relocator& pParent) argument 1607 gotpcrel(Relocation& pReloc, X86_64Relocator& pParent) argument 1632 plt32(Relocation& pReloc, X86_64Relocator& pParent) argument 1648 rel(Relocation& pReloc, X86_64Relocator& pParent) argument 1685 unsupported(Relocation& pReloc, X86_64Relocator& pParent) argument [all...] |
H A D | X86Relocator.h | 80 void scanRelocation(Relocation& pReloc, 99 virtual void scanLocalReloc(Relocation& pReloc, 104 virtual void scanGlobalReloc(Relocation& pReloc, 149 virtual bool mayHaveFunctionPointerAccess(const Relocation& pReloc) const; 153 uint32_t getDebugStringOffset(Relocation& pReloc) const; 157 void applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset); 160 void scanLocalReloc(Relocation& pReloc, 165 void scanGlobalReloc(Relocation& pReloc, 172 void convertTLSIEtoLE(Relocation& pReloc, LDSection& pSection); 214 virtual bool mayHaveFunctionPointerAccess(const Relocation& pReloc) cons [all...] |
/frameworks/compile/mclinker/lib/Target/Mips/ |
H A D | MipsRelocator.cpp | 90 static void helper_PLT_init(MipsRelocationInfo& pReloc, argument 92 ResolveInfo* rsym = pReloc.parent().symInfo(); 149 Relocator::Result MipsRelocator::applyRelocation(Relocation& pReloc) { argument 153 if (m_CurrentLo16Reloc == NULL && isPostponed(pReloc)) { 154 postponeRelocation(pReloc); 158 for (MipsRelocationInfo info(pReloc, isRel()); !info.isNone(); 171 pReloc.target() &= ~mask; 172 pReloc.target() |= info.result() & mask; 183 void MipsRelocator::scanRelocation(Relocation& pReloc, argument 189 ResolveInfo* rsym = pReloc 244 scanLocalReloc(MipsRelocationInfo& pReloc, IRBuilder& pBuilder, const LDSection& pSection) argument 345 scanGlobalReloc(MipsRelocationInfo& pReloc, IRBuilder& pBuilder, const LDSection& pSection) argument 548 postponeRelocation(Relocation& pReloc) argument 598 getLocalGOTEntry(MipsRelocationInfo& pReloc, Relocation::DWord entryValue) argument 626 getGlobalGOTEntry(MipsRelocationInfo& pReloc) argument 653 getTLSGOTEntry(MipsRelocationInfo& pReloc) argument 672 getGOTOffset(MipsRelocationInfo& pReloc) argument 689 getTLSGOTOffset(MipsRelocationInfo& pReloc) argument 694 createDynRel(MipsRelocationInfo& pReloc) argument 742 applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset) argument 837 none(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 843 abs32(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 874 rel26(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 897 hi16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 919 lo16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 943 gprel16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 963 got16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 984 gothi16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 996 gotlo16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1005 sub(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1016 call16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1024 gprel32(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1038 abs64(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1069 gotdisp(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1077 gotoff(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1084 jalr(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1090 pc16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1100 pc32(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1110 pc18_s3(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1120 pc19_s2(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1130 pc21_s2(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1140 pc26_s2(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1150 pchi16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1160 pclo16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1173 tlshi16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1194 tlslo16(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1213 tlsgot(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument 1219 unsupported(MipsRelocationInfo& pReloc, MipsRelocator& pParent) argument [all...] |
H A D | MipsRelocator.h | 44 void scanRelocation(Relocation& pReloc, 66 Result applyRelocation(Relocation& pReloc); 70 uint32_t getDebugStringOffset(Relocation& pReloc) const; 74 void applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset); 84 void postponeRelocation(Relocation& pReloc); 91 bool isGpDisp(const Relocation& pReloc) const; 110 Fragment& getLocalGOTEntry(MipsRelocationInfo& pReloc, 115 Fragment& getGlobalGOTEntry(MipsRelocationInfo& pReloc); 119 Fragment& getTLSGOTEntry(MipsRelocationInfo& pReloc); 122 Address getGOTOffset(MipsRelocationInfo& pReloc); [all...] |
H A D | MipsLA25Stub.cpp | 50 bool MipsLA25Stub::isMyDuty(const Relocation& pReloc, argument 53 if (llvm::ELF::R_MIPS_26 != pReloc.type()) 56 const ResolveInfo* rsym = pReloc.symInfo();
|
/frameworks/compile/mclinker/lib/Target/Hexagon/ |
H A D | HexagonRelocator.cpp | 55 static HexagonGOTEntry& helper_GOT_init(Relocation& pReloc, argument 59 ResolveInfo* rsym = pReloc.symInfo(); 91 static PLTEntryBase& helper_PLT_init(Relocation& pReloc, argument 94 ResolveInfo* rsym = pReloc.symInfo(); 127 typedef Relocator::Result (*ApplyFunctionType)(Relocation& pReloc, 195 void HexagonRelocator::scanRelocation(Relocation& pReloc, argument 204 ResolveInfo* rsym = pReloc.symInfo(); 216 scanLocalReloc(pReloc, pLinker, pModule, pSection); 218 scanGlobalReloc(pReloc, pLinker, pModule, pSection); 223 issueUndefRef(pReloc, pSectio 235 scanLocalReloc(Relocation& pReloc, IRBuilder& pBuilder, Module& pModule, LDSection& pSection) argument 286 scanGlobalReloc(Relocation& pReloc, IRBuilder& pBuilder, Module& pModule, LDSection& pSection) argument 475 partialScanRelocation(Relocation& pReloc, Module& pModule) argument 499 none(Relocation& pReloc, HexagonRelocator& pParent) argument 506 applyAbs(Relocation& pReloc) argument 584 applyRel(Relocation& pReloc, int64_t pResult) argument 695 relocAbs(Relocation& pReloc, HexagonRelocator& pParent) argument 735 relocPCREL(Relocation& pReloc, HexagonRelocator& pParent) argument 767 relocGPREL(Relocation& pReloc, HexagonRelocator& pParent) argument 817 relocPLTB22PCREL(Relocation& pReloc, HexagonRelocator& pParent) argument 835 relocGOT(Relocation& pReloc, HexagonRelocator& pParent) argument 913 relocGOTREL(Relocation& pReloc, HexagonRelocator& pParent) argument 964 unsupported(Relocation& pReloc, HexagonRelocator& pParent) argument [all...] |
H A D | HexagonRelocator.h | 78 void scanRelocation(Relocation& pReloc, 85 void partialScanRelocation(Relocation& pReloc, 110 uint32_t getDebugStringOffset(Relocation& pReloc) const { return 0; } 114 void applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset) {} argument 129 virtual void scanLocalReloc(Relocation& pReloc, 134 virtual void scanGlobalReloc(Relocation& pReloc,
|
/frameworks/compile/mclinker/lib/LD/ |
H A D | Relocator.cpp | 31 void Relocator::partialScanRelocation(Relocation& pReloc, argument 34 if (pReloc.symInfo()->type() == ResolveInfo::Section) { 35 LDSymbol* input_sym = pReloc.symInfo()->outSymbol(); 40 pReloc.target() += offset; 49 pReloc.setSymInfo(sym_info); 53 void Relocator::issueUndefRef(Relocation& pReloc, argument 56 FragmentRef::Offset undef_sym_pos = pReloc.targetRef().offset(); 61 std::string reloc_sym(pReloc.symInfo()->name());
|
H A D | StubFactory.cpp | 40 Stub* StubFactory::create(Relocation& pReloc, argument 46 Stub* prototype = findPrototype(pReloc, pReloc.place(), pTargetSymValue); 48 const Fragment* frag = pReloc.targetRef().frag(); 59 stub = islands.second->findStub(prototype, pReloc); 64 stub = islands.first->findStub(prototype, pReloc); 70 stub->applyFixup(pReloc, pBuilder, *islands.first); 73 islands.first->addStub(prototype, pReloc, *stub); 109 Stub* StubFactory::findPrototype(const Relocation& pReloc, argument 114 if ((*it)->isMyDuty(pReloc, pSourc [all...] |
H A D | BranchIsland.cpp | 86 Stub* BranchIsland::findStub(const Stub* pPrototype, const Relocation& pReloc) { argument 87 Key key(pPrototype, pReloc.symInfo()->outSymbol(), pReloc.addend()); 98 const Relocation& pReloc, 101 Key key(pPrototype, pReloc.symInfo()->outSymbol(), pReloc.addend()); 151 bool BranchIsland::addRelocation(Relocation& pReloc) { argument 152 m_Relocations.push_back(&pReloc); 97 addStub(const Stub* pPrototype, const Relocation& pReloc, Stub& pStub) argument
|
H A D | DebugString.cpp | 67 void DebugString::applyOffset(Relocation& pReloc, TargetLDBackend& pBackend) { argument 69 ResolveInfo* info = pReloc.symInfo(); 78 uint32_t offset = pBackend.getRelocator()->getDebugStringOffset(pReloc); 82 pBackend.getRelocator()->applyDebugStringOffset(pReloc,
|
/frameworks/compile/mclinker/include/mcld/LD/ |
H A D | Relocator.h | 47 /// @param pReloc - a read in relocation entry 51 virtual void scanRelocation(Relocation& pReloc, 60 /// @param pReloc - a read in relocation entry 63 virtual void issueUndefRef(Relocation& pReloc, 86 /// @param pReloc - a read in relocation entry 89 virtual void partialScanRelocation(Relocation& pReloc, 107 virtual bool mayHaveFunctionPointerAccess(const Relocation& pReloc) const { 113 virtual uint32_t getDebugStringOffset(Relocation& pReloc) const = 0; 117 virtual void applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset) = 0;
|
H A D | StubFactory.h | 36 Stub* create(Relocation& pReloc, 48 Stub* findPrototype(const Relocation& pReloc,
|
H A D | DebugString.h | 43 void applyOffset(Relocation& pReloc, TargetLDBackend& pBackend);
|
H A D | IdenticalCodeFolding.h | 40 FoldingCandidate(LDSection* pCode, LDSection* pReloc, Input* pInput) argument 41 : sect(pCode), reloc_sect(pReloc), obj(pInput) {}
|