Home
last modified time | relevance | path

Searched refs:reloc (Results 1 – 24 of 24) sorted by relevance

/aosp12/bionic/linker/
H A Dlinker_reloc_iterators.h51 rel_t reloc = { in for_all_packed_relocs() local
65 reloc.r_info = decoder.pop_front(); in for_all_packed_relocs()
75 reloc.r_addend += decoder.pop_front(); in for_all_packed_relocs()
77 reloc.r_addend = 0; in for_all_packed_relocs()
88 reloc.r_offset += group_r_offset_delta; in for_all_packed_relocs()
90 reloc.r_offset += decoder.pop_front(); in for_all_packed_relocs()
93 reloc.r_info = decoder.pop_front(); in for_all_packed_relocs()
97 reloc.r_addend += decoder.pop_front(); in for_all_packed_relocs()
100 if (!callback(reloc)) { in for_all_packed_relocs()
H A Dlinker_relocate.cpp164 const uint32_t r_type = ELFW(R_TYPE)(reloc.r_info); in process_relocation_impl()
165 const uint32_t r_sym = ELFW(R_SYM)(reloc.r_info); in process_relocation_impl()
225 auto get_addend_rel = [&]() -> ElfW(Addr) { return reloc.r_addend; }; in process_relocation_impl()
344 return process_relocation_general(relocator, reloc); in process_relocation_impl()
429 ElfW(Addr) addend = reloc.r_addend; in process_relocation_impl()
473 const Elf32_Addr result = sym_addr + reloc.r_addend; in process_relocation_impl()
482 const ElfW(Addr) target = sym_addr + reloc.r_addend; in process_relocation_impl()
521 process_relocation_general(relocator, reloc) : in process_relocation()
522 process_relocation_impl<Mode>(relocator, reloc); in process_relocation()
539 return for_all_packed_relocs(decoder, [&](const rel_t& reloc) { in packed_relocate_impl() argument
[all …]
/aosp12/frameworks/compile/mclinker/lib/Target/AArch64/
H A DAArch64CA53ErratumStub.cpp105 Relocation* reloc = in applyFixup() local
109 reloc->setSymInfo(target_info); in applyFixup()
113 reloc->target() = in applyFixup()
115 pIsland.addRelocation(*reloc); in applyFixup()
119 reloc = Relocation::Create((*it)->type(), in applyFixup()
122 reloc->setSymInfo(target_info); in applyFixup()
123 reloc->target() = AArch64InsnHelpers::buildBranchInsn(); in applyFixup()
124 pIsland.addRelocation(*reloc); in applyFixup()
H A DAArch64LDBackend.cpp340 Relocation* reloc = in scanErrata() local
344 reloc->setSymInfo(stub->symInfo()); in scanErrata()
345 reloc->target() = AArch64InsnHelpers::buildBranchInsn(); in scanErrata()
346 addExtraRelocation(reloc); in scanErrata()
383 RelocData::iterator reloc, rEnd = (*rs)->getRelocData()->end(); in doRelax() local
384 for (reloc = (*rs)->getRelocData()->begin(); reloc != rEnd; ++reloc) { in doRelax()
385 Relocation* relocation = llvm::cast<Relocation>(reloc); in doRelax()
H A DAArch64Relocator.cpp165 Relocation& reloc = helper_DynRela_init(rsym, in scanLocalReloc() local
170 getRelRelMap().record(pReloc, reloc); in scanLocalReloc()
181 Relocation& reloc = helper_DynRela_init(rsym, in scanLocalReloc() local
186 getRelRelMap().record(pReloc, reloc); in scanLocalReloc()
251 Relocation& reloc = in scanGlobalReloc() local
257 getRelRelMap().record(pReloc, reloc); in scanGlobalReloc()
259 Relocation& reloc = helper_DynRela_init(rsym, in scanGlobalReloc() local
264 getRelRelMap().record(pReloc, reloc); in scanGlobalReloc()
/aosp12/frameworks/compile/mclinker/lib/Object/
H A DObjectLinker.cpp596 for (reloc = (*rs)->getRelocData()->begin(); reloc != rEnd; ++reloc) { in scanRelocations()
597 Relocation* relocation = llvm::cast<Relocation>(reloc); in scanRelocations()
800 for (reloc = (*rs)->getRelocData()->begin(); reloc != rEnd; ++reloc) { in relocation()
801 Relocation* relocation = llvm::cast<Relocation>(reloc); in relocation()
884 for (reloc = (*rs)->getRelocData()->begin(); reloc != rEnd; ++reloc) { in normalSyncRelocationResult()
885 Relocation* relocation = llvm::cast<Relocation>(reloc); in normalSyncRelocationResult()
914 Relocation* reloc = *iter; in normalSyncRelocationResult() local
915 writeRelocationResult(*reloc, data); in normalSyncRelocationResult()
939 Relocation* reloc = llvm::cast<Relocation>(relocIter); in partialSyncRelocationResult() local
947 if (reloc->type() == 0x0) in partialSyncRelocationResult()
[all …]
/aosp12/bionic/benchmarks/linker_relocation/
H A Drun_bench_with_ninja.sh116 work_dir=$tmp_dir/linker-reloc-bench
122 target_dir=/data/local/tmp/linker-reloc-bench
124 (cd $tmp_dir; tar -c linker-reloc-bench/linker_reloc_bench_main linker-reloc-bench/*.so \
H A DREADME.md9 To run the benchmark, build the `linker-reloc-bench` target, sync `data`, and
10 run the benchmark from `/data/benchmarktest[64]/linker-reloc-bench`.
H A DAndroid.bp45 name: "linker-reloc-bench",
82 relative_install_path: "linker-reloc-bench",
/aosp12/frameworks/compile/mclinker/lib/Target/
H A DOutputRelocSection.cpp38 Relocation* reloc = Relocation::Create(); in create() local
39 m_pRelocData->append(*reloc); in create()
40 return reloc; in create()
/aosp12/frameworks/compile/mclinker/lib/Fragment/
H A DStub.cpp58 Relocation* reloc = in applyFixup() local
62 reloc->setSymInfo(pSrcReloc.symInfo()); in applyFixup()
63 pIsland.addRelocation(*reloc); in applyFixup()
/aosp12/frameworks/compile/mclinker/lib/Target/ARM/
H A DARMLDBackend.cpp583 Relocation* reloc = llvm::cast<Relocation>(reloc_it); in setUpReachedSectionsForGC() local
584 ResolveInfo* sym = reloc->symInfo(); in setUpReachedSectionsForGC()
759 Relocation* reloc = in rewriteARMExIdxSection() local
763 reloc->setSymInfo( in rewriteARMExIdxSection()
765 addExtraRelocation(reloc); in rewriteARMExIdxSection()
779 Relocation* reloc = in rewriteARMExIdxSection() local
783 reloc->setSymInfo(CreateLocalSymbolToFragmentEnd(pModule, *prevTextFrag)); in rewriteARMExIdxSection()
784 addExtraRelocation(reloc); in rewriteARMExIdxSection()
830 RelocData::iterator reloc, rEnd = (*rs)->getRelocData()->end(); in doRelax() local
831 for (reloc = (*rs)->getRelocData()->begin(); reloc != rEnd; ++reloc) { in doRelax()
[all …]
/aosp12/frameworks/compile/mclinker/lib/Target/X86/
H A DX86Relocator.cpp786 Relocation* reloc = in convertTLSIEtoLE() local
792 reloc->setSymInfo(pReloc.symInfo()); in convertTLSIEtoLE()
800 reloc = Relocation::Create( in convertTLSIEtoLE()
805 reloc->setSymInfo(pReloc.symInfo()); in convertTLSIEtoLE()
825 assert(reloc != NULL); in convertTLSIEtoLE()
827 RelocData::iterator(pReloc), reloc); in convertTLSIEtoLE()
1302 Relocation& reloc = helper_DynRel_init(rsym, in scanLocalReloc() local
1307 getRelRelMap().record(pReloc, reloc); in scanLocalReloc()
1327 getRelRelMap().record(pReloc, reloc); in scanLocalReloc()
1407 getRelRelMap().record(pReloc, reloc); in scanGlobalReloc()
[all …]
/aosp12/frameworks/compile/mclinker/include/mcld/Target/
H A DTargetLDBackend.h206 void addExtraRelocation(Relocation* reloc) { in addExtraRelocation() argument
207 m_ExtraReloc.push_back(reloc); in addExtraRelocation()
/aosp12/frameworks/compile/mclinker/lib/Target/Hexagon/
H A DHexagonLDBackend.cpp558 RelocData::iterator reloc, rEnd = (*rs)->getRelocData()->end(); in doRelax() local
559 for (reloc = (*rs)->getRelocData()->begin(); reloc != rEnd; ++reloc) { in doRelax()
560 switch (reloc->type()) { in doRelax()
566 Relocation* relocation = llvm::cast<Relocation>(reloc); in doRelax()
H A DHexagonRelocator.cpp265 Relocation& reloc = helper_DynRel_init(rsym, in scanLocalReloc() local
273 getRelRelMap().record(pReloc, reloc); in scanLocalReloc()
328 Relocation& reloc = helper_DynRel_init(rsym, in scanGlobalReloc() local
336 getRelRelMap().record(pReloc, reloc); in scanGlobalReloc()
/aosp12/frameworks/av/media/libstagefright/codecs/hevcdec/
H A DAndroid.bp35 // requires unsupported dynamic reloc R_ARM_REL32; recompile with -fPIC
/aosp12/system/chre/platform/shared/
H A Dnanoapp_loader.cc802 ElfRel *reloc = in fixRelocations() local
810 ElfRel *curr = &reloc[i]; in fixRelocations()
873 ElfRel *reloc = reinterpret_cast<ElfRel *>( in resolveGot() local
880 ElfRel *curr = &reloc[i]; in resolveGot()
/aosp12/frameworks/compile/mclinker/lib/LD/
H A DGarbageCollection.cpp151 Relocation* reloc = llvm::cast<Relocation>(reloc_it); in setUpReachedSections() local
152 ResolveInfo* sym = reloc->symInfo(); in setUpReachedSections()
/aosp12/frameworks/compile/mclinker/lib/Target/Mips/
H A DMipsLDBackend.cpp815 for (RelocData::iterator reloc = sec->getRelocData()->begin(); in doRelax() local
816 reloc != sec->getRelocData()->end(); in doRelax()
817 ++reloc) { in doRelax()
818 if (llvm::ELF::R_MIPS_26 != reloc->type()) in doRelax()
821 if (relaxRelocation(pBuilder, *llvm::cast<Relocation>(reloc))) in doRelax()
H A DMipsGOT.h50 int reloc,
H A DMipsGOT.cpp240 int reloc, in reserveLocalEntry() argument
242 LocalEntry entry(&pInfo, pAddend, reloc == llvm::ELF::R_MIPS_GOT16); in reserveLocalEntry()
/aosp12/art/runtime/gc/space/
H A Dimage_space.cc251 std::ostream& operator<<(std::ostream& os, const RelocationRange& reloc) { in operator <<() argument
252 return os << "(" << reinterpret_cast<const void*>(reloc.Source()) << "-" in operator <<()
253 << reinterpret_cast<const void*>(reloc.Source() + reloc.Length()) << ")->(" in operator <<()
254 << reinterpret_cast<const void*>(reloc.Dest()) << "-" in operator <<()
255 << reinterpret_cast<const void*>(reloc.Dest() + reloc.Length()) << ")"; in operator <<()
/aosp12/bionic/docs/
H A Delf-tls.md174 // allocated in the .got, resolved at load-time with a dynamic reloc.