Searched refs:pReloc (Results 1 - 25 of 41) sorted by relevance

12

/frameworks/compile/mclinker/lib/Target/AArch64/
H A DAArch64Relocator.cpp34 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 DAArch64Relocator.h98 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 DAArch64LongBranchStub.cpp81 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 DAArch64LongBranchStub.h30 bool isMyDuty(const Relocation& pReloc,
/frameworks/compile/mclinker/lib/Target/ARM/
H A DARMRelocator.cpp29 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 DARMRelocator.h89 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 DARMToARMStub.cpp61 bool ARMToARMStub::isMyDuty(const class Relocation& pReloc, argument
67 switch (pReloc.type()) {
73 uint64_t dest = pTargetSymValue + pReloc.addend() + 8u;
H A DARMToTHMStub.cpp63 bool ARMToTHMStub::isMyDuty(const class Relocation& pReloc, argument
69 switch (pReloc.type()) {
73 uint64_t dest = pTargetSymValue + pReloc.addend() + 8u;
H A DTHMToARMStub.cpp70 bool THMToARMStub::isMyDuty(const class Relocation& pReloc, argument
76 switch (pReloc.type()) {
80 uint64_t dest = pTargetSymValue + pReloc.addend() + 4u;
H A DTHMToTHMStub.cpp72 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 DX86Relocator.cpp59 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 DX86Relocator.h80 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 DMipsRelocator.cpp90 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 DMipsRelocator.h44 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 DMipsLA25Stub.cpp50 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 DHexagonRelocator.cpp55 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 DHexagonRelocator.h78 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 DRelocator.cpp31 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 DStubFactory.cpp40 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 DBranchIsland.cpp86 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 DDebugString.cpp67 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 DRelocator.h47 /// @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 DStubFactory.h36 Stub* create(Relocation& pReloc,
48 Stub* findPrototype(const Relocation& pReloc,
H A DDebugString.h43 void applyOffset(Relocation& pReloc, TargetLDBackend& pBackend);
H A DIdenticalCodeFolding.h40 FoldingCandidate(LDSection* pCode, LDSection* pReloc, Input* pInput) argument
41 : sect(pCode), reloc_sect(pReloc), obj(pInput) {}

Completed in 212 milliseconds

12