Home
last modified time | relevance | path

Searched refs:pReloc (Results 1 – 25 of 39) sorted by relevance

12

/frameworks/compile/mclinker/lib/Target/AArch64/
DAArch64Relocator.cpp34 typedef Relocator::Result (*ApplyFunctionType)(Relocation& pReloc,
149 void AArch64Relocator::scanLocalReloc(Relocation& pReloc, in scanLocalReloc() argument
152 ResolveInfo* rsym = pReloc.symInfo(); in scanLocalReloc()
153 switch (pReloc.type()) { in scanLocalReloc()
164 *pReloc.targetRef().frag(), in scanLocalReloc()
165 pReloc.targetRef().offset(), in scanLocalReloc()
168 getRelRelMap().record(pReloc, reloc); in scanLocalReloc()
180 *pReloc.targetRef().frag(), in scanLocalReloc()
181 pReloc.targetRef().offset(), in scanLocalReloc()
182 pReloc.type(), in scanLocalReloc()
[all …]
DAArch64Relocator.h93 void scanRelocation(Relocation& pReloc,
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,
DAArch64RelocationHelpers.h92 static inline AArch64PLT1& helper_PLT_init(Relocation& pReloc, in helper_PLT_init() argument
95 ResolveInfo* rsym = pReloc.symInfo(); in helper_PLT_init()
157 static inline AArch64GOTEntry& helper_GOT_init(Relocation& pReloc, in helper_GOT_init() argument
161 ResolveInfo* rsym = pReloc.symInfo(); in helper_GOT_init()
179 pParent.getRelRelMap().record(pReloc, rel_entry); in helper_GOT_init()
/frameworks/compile/mclinker/lib/Target/ARM/
DARMRelocator.cpp29 static Relocator::DWord getThumbBit(const Relocation& pReloc) { in getThumbBit() argument
33 ((!pReloc.symInfo()->isUndef() || pReloc.symInfo()->isDyn()) && in getThumbBit()
34 (pReloc.symInfo()->type() == ResolveInfo::Function) && in getThumbBit()
35 ((pReloc.symValue() & 0x1) != 0)) in getThumbBit()
81 static ARMGOTEntry& helper_GOT_init(Relocation& pReloc, in helper_GOT_init() argument
85 ResolveInfo* rsym = pReloc.symInfo(); in helper_GOT_init()
125 static ARMPLT1& helper_PLT_init(Relocation& pReloc, ARMRelocator& pParent) { in helper_PLT_init() argument
127 ResolveInfo* rsym = pReloc.symInfo(); in helper_PLT_init()
151 static void helper_DynRel_init(Relocation& pReloc, in helper_DynRel_init() argument
155 ResolveInfo* rsym = pReloc.symInfo(); in helper_DynRel_init()
[all …]
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;
DARMToARMStub.cpp61 bool ARMToARMStub::isMyDuty(const class Relocation& pReloc, in isMyDuty() argument
67 switch (pReloc.type()) { in isMyDuty()
73 uint64_t dest = pTargetSymValue + pReloc.addend() + 8u; in isMyDuty()
DARMToTHMStub.cpp63 bool ARMToTHMStub::isMyDuty(const class Relocation& pReloc, in isMyDuty() argument
69 switch (pReloc.type()) { in isMyDuty()
73 uint64_t dest = pTargetSymValue + pReloc.addend() + 8u; in isMyDuty()
DTHMToARMStub.cpp70 bool THMToARMStub::isMyDuty(const class Relocation& pReloc, in isMyDuty() argument
76 switch (pReloc.type()) { in isMyDuty()
80 uint64_t dest = pTargetSymValue + pReloc.addend() + 4u; in isMyDuty()
DTHMToTHMStub.cpp72 bool THMToTHMStub::isMyDuty(const class Relocation& pReloc, in isMyDuty() argument
78 switch (pReloc.type()) { in isMyDuty()
82 uint64_t dest = pTargetSymValue + pReloc.addend() + 4u; in isMyDuty()
/frameworks/compile/mclinker/lib/Target/X86/
DX86Relocator.cpp59 static X86_32GOTEntry& helper_GOT_init(Relocation& pReloc, in helper_GOT_init() argument
63 ResolveInfo* rsym = pReloc.symInfo(); in helper_GOT_init()
92 static Relocator::Address helper_get_GOT_address(Relocation& pReloc, in helper_get_GOT_address() argument
94 X86_32GOTEntry* got_entry = pParent.getSymGOTMap().lookUp(*pReloc.symInfo()); in helper_get_GOT_address()
99 static PLTEntryBase& helper_PLT_init(Relocation& pReloc, in helper_PLT_init() argument
102 ResolveInfo* rsym = pReloc.symInfo(); in helper_PLT_init()
136 typedef Relocator::Result (*X86_32ApplyFunctionType)(Relocation& pReloc,
160 void X86Relocator::scanRelocation(Relocation& pReloc, in scanRelocation() argument
168 ResolveInfo* rsym = pReloc.symInfo(); in scanRelocation()
179 scanLocalReloc(pReloc, pLinker, pModule, pSection); in scanRelocation()
[all …]
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) const;
[all …]
/frameworks/compile/mclinker/lib/Target/Mips/
DMipsRelocator.cpp146 Relocator::Result MipsRelocator::applyRelocation(Relocation& pReloc) { in applyRelocation() argument
150 if (m_CurrentLo16Reloc == NULL && isPostponed(pReloc)) { in applyRelocation()
151 postponeRelocation(pReloc); in applyRelocation()
155 for (MipsRelocationInfo info(pReloc, isRel()); !info.isNone(); in applyRelocation()
168 pReloc.target() &= ~mask; in applyRelocation()
169 pReloc.target() |= info.result() & mask; in applyRelocation()
184 void MipsRelocator::scanRelocation(Relocation& pReloc, in scanRelocation() argument
190 ResolveInfo* rsym = pReloc.symInfo(); in scanRelocation()
203 for (MipsRelocationInfo info(pReloc, isRel()); !info.isNone(); in scanRelocation()
214 getTarget().addNonPICBranchSym(pReloc.symInfo()); in scanRelocation()
[all …]
DMipsRelocator.h40 void scanRelocation(Relocation& pReloc,
62 Result applyRelocation(Relocation& pReloc);
66 uint32_t getDebugStringOffset(Relocation& pReloc) const;
70 void applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset);
80 void postponeRelocation(Relocation& pReloc);
87 bool isGpDisp(const Relocation& pReloc) const;
98 Fragment& getLocalGOTEntry(MipsRelocationInfo& pReloc,
103 Fragment& getGlobalGOTEntry(MipsRelocationInfo& pReloc);
106 Address getGOTOffset(MipsRelocationInfo& pReloc);
109 void createDynRel(MipsRelocationInfo& pReloc);
[all …]
DMipsLA25Stub.cpp57 bool MipsLA25Stub::isMyDuty(const Relocation& pReloc, in isMyDuty() argument
60 if (llvm::ELF::R_MIPS_26 != pReloc.type()) in isMyDuty()
63 const ResolveInfo* rsym = pReloc.symInfo(); in isMyDuty()
/frameworks/compile/mclinker/lib/Target/Hexagon/
DHexagonRelocator.cpp55 static HexagonGOTEntry& helper_GOT_init(Relocation& pReloc, in helper_GOT_init() argument
59 ResolveInfo* rsym = pReloc.symInfo(); in helper_GOT_init()
91 static PLTEntryBase& helper_PLT_init(Relocation& pReloc, in helper_PLT_init() argument
94 ResolveInfo* rsym = pReloc.symInfo(); in helper_PLT_init()
127 typedef Relocator::Result (*ApplyFunctionType)(Relocation& pReloc,
195 void HexagonRelocator::scanRelocation(Relocation& pReloc, in scanRelocation() argument
204 ResolveInfo* rsym = pReloc.symInfo(); in scanRelocation()
216 scanLocalReloc(pReloc, pLinker, pModule, pSection); in scanRelocation()
218 scanGlobalReloc(pReloc, pLinker, pModule, pSection); in scanRelocation()
223 issueUndefRef(pReloc, pSection, pInput); in scanRelocation()
[all …]
DHexagonRelocator.h78 void scanRelocation(Relocation& pReloc,
85 void partialScanRelocation(Relocation& pReloc,
110 uint32_t getDebugStringOffset(Relocation& pReloc) const { return 0; } in getDebugStringOffset() argument
114 void applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset) {} in applyDebugStringOffset() argument
129 virtual void scanLocalReloc(Relocation& pReloc,
134 virtual void scanGlobalReloc(Relocation& pReloc,
DHexagonAbsoluteStub.cpp60 bool HexagonAbsoluteStub::isMyDuty(const class Relocation& pReloc, in isMyDuty() argument
64 switch (pReloc.type()) { in isMyDuty()
/frameworks/compile/mclinker/lib/LD/
DStubFactory.cpp39 Stub* StubFactory::create(Relocation& pReloc, in create() argument
45 Stub* prototype = findPrototype(pReloc, pReloc.place(), pTargetSymValue); in create()
47 const Fragment* frag = pReloc.targetRef().frag(); in create()
58 stub = islands.second->findStub(prototype, pReloc); in create()
63 pReloc.setSymInfo(stub->symInfo()); in create()
66 stub = islands.first->findStub(prototype, pReloc); in create()
69 pReloc.setSymInfo(stub->symInfo()); in create()
76 name.append(pReloc.symInfo()->name()) in create()
105 reloc->setSymInfo(pReloc.symInfo()); in create()
110 islands.first->addStub(prototype, pReloc, *stub); in create()
[all …]
DRelocator.cpp31 void Relocator::partialScanRelocation(Relocation& pReloc, in partialScanRelocation() argument
34 if (pReloc.symInfo()->type() == ResolveInfo::Section) { in partialScanRelocation()
35 LDSymbol* input_sym = pReloc.symInfo()->outSymbol(); in partialScanRelocation()
40 pReloc.target() += offset; in partialScanRelocation()
49 pReloc.setSymInfo(sym_info); in partialScanRelocation()
53 void Relocator::issueUndefRef(Relocation& pReloc, in issueUndefRef() argument
56 FragmentRef::Offset undef_sym_pos = pReloc.targetRef().offset(); in issueUndefRef()
61 std::string reloc_sym(pReloc.symInfo()->name()); in issueUndefRef()
DBranchIsland.cpp86 Stub* BranchIsland::findStub(const Stub* pPrototype, const Relocation& pReloc) { in findStub() argument
87 Key key(pPrototype, pReloc.symInfo()->outSymbol(), pReloc.addend()); in findStub()
98 const Relocation& pReloc, in addStub() argument
101 Key key(pPrototype, pReloc.symInfo()->outSymbol(), pReloc.addend()); in addStub()
127 bool BranchIsland::addRelocation(Relocation& pReloc) { in addRelocation() argument
128 m_Relocations.push_back(&pReloc); in addRelocation()
DDebugString.cpp67 void DebugString::applyOffset(Relocation& pReloc, TargetLDBackend& pBackend) { in applyOffset() argument
69 ResolveInfo* info = pReloc.symInfo(); in applyOffset()
78 uint32_t offset = pBackend.getRelocator()->getDebugStringOffset(pReloc); in applyOffset()
82 pBackend.getRelocator()->applyDebugStringOffset(pReloc, in applyOffset()
/frameworks/compile/mclinker/include/mcld/LD/
DRelocator.h51 virtual void scanRelocation(Relocation& pReloc,
63 virtual void issueUndefRef(Relocation& pReloc,
89 virtual void partialScanRelocation(Relocation& pReloc,
107 virtual bool mayHaveFunctionPointerAccess(const Relocation& pReloc) const { in mayHaveFunctionPointerAccess() argument
113 virtual uint32_t getDebugStringOffset(Relocation& pReloc) const = 0;
117 virtual void applyDebugStringOffset(Relocation& pReloc, uint32_t pOffset) = 0;
DStubFactory.h35 Stub* create(Relocation& pReloc,
43 Stub* findPrototype(const Relocation& pReloc,
DBranchIsland.h89 Stub* findStub(const Stub* pPrototype, const Relocation& pReloc);
92 bool addStub(const Stub* pPrototype, const Relocation& pReloc, Stub& pStub);
95 bool addRelocation(Relocation& pReloc);
DIdenticalCodeFolding.h40 FoldingCandidate(LDSection* pCode, LDSection* pReloc, Input* pInput) in FoldingCandidate() argument
41 : sect(pCode), reloc_sect(pReloc), obj(pInput) {} in FoldingCandidate()

12