/external/chromium_org/tools/relocation_packer/src/ |
D | packer_unittest.cc | 14 void AddRelocation(ELF::Addr addr, std::vector<ELF::Rel>* relocations) { in AddRelocation() argument 18 relocations->push_back(relocation); in AddRelocation() 29 std::vector<ELF::Rela>* relocations) { in AddRelocation() argument 34 relocations->push_back(relocation); in AddRelocation() 51 std::vector<ELF::Rel> relocations; in TEST() local 57 AddRelocation(0xd1ce0000, &relocations); in TEST() 58 // Two more relocations, 4 byte deltas. in TEST() 59 AddRelocation(0xd1ce0004, &relocations); in TEST() 60 AddRelocation(0xd1ce0008, &relocations); in TEST() 61 // Three more relocations, 8 byte deltas. in TEST() [all …]
|
D | run_length_encoder_unittest.cc | 14 void AddRelocation(ELF::Addr addr, std::vector<ELF::Rel>* relocations) { in AddRelocation() argument 18 relocations->push_back(relocation); in AddRelocation() 32 std::vector<ELF::Rel> relocations; in TEST() local 38 codec.Encode(relocations, &packed); in TEST() 43 AddRelocation(0xf00d0000, &relocations); in TEST() 46 codec.Encode(relocations, &packed); in TEST() 51 AddRelocation(0xf00d0004, &relocations); in TEST() 54 codec.Encode(relocations, &packed); in TEST() 66 AddRelocation(0xf00d0008, &relocations); in TEST() 68 // Add three more relocations, 8 byte deltas. in TEST() [all …]
|
D | delta_encoder_unittest.cc | 16 std::vector<ELF::Rela>* relocations) { in AddRelocation() argument 21 relocations->push_back(relocation); in AddRelocation() 38 std::vector<ELF::Rela> relocations; in TEST() local 44 codec.Encode(relocations, &packed); in TEST() 49 AddRelocation(0xf00d0000, 10000, &relocations); in TEST() 52 codec.Encode(relocations, &packed); in TEST() 62 AddRelocation(0xf00d0004, 10012, &relocations); in TEST() 65 codec.Encode(relocations, &packed); in TEST() 78 AddRelocation(0xf00d0008, 10024, &relocations); in TEST() 80 // Add three more relocations, 8 byte offset deltas, -24 byte addend deltas. in TEST() [all …]
|
D | run_length_encoder.h | 5 // Run-length encode and decode relative relocations. 7 // Relative relocations are the bulk of dynamic relocations (the 10 // relocations without addends, .rela.dyn relocations with addends. 32 // set of relative relocations in libchrome.<version>.so can be 39 // Decoding regenerates relative relocations beginning at address 44 // count pairs. A final run-length encoded relative relocations vector 62 // A RelocationRunLengthCodec packs vectors of relative relocations 66 // Encode relative relocations into a more compact form. 67 // |relocations| is a vector of relative relocation structs. 68 // |packed| is the vector of packed words into which relocations are packed. [all …]
|
D | packer.h | 5 // Pack relative relocations into a more compact form. 8 // For relative relocations without addends (32 bit platforms) 12 // turns a large set of relative relocations into a much smaller set 20 // A complete packed stream of relocations without addends might look 27 // For relative relocations with addends (64 bit platforms) 31 // turns a large set of relative relocations into a smaller set 55 // A RelocationPacker packs vectors of relative relocations into more 59 // Pack relative relocations into a more compact form. 60 // |relocations| is a vector of relative relocation structs. 61 // |packed| is the vector of packed bytes into which relocations are packed. [all …]
|
D | delta_encoder.h | 5 // Delta encode and decode relative relocations with addends. 7 // Relative relocations are the bulk of dynamic relocations (the 10 // relocations without addends, .rela.dyn relocations with addends. 39 // three relocations above can be represented as: 60 // A RelocationDeltaCodec packs vectors of relative relocations with 65 // Encode relative relocations with addends into a more compact form. 66 // |relocations| is a vector of relative relocation with addend structs. 67 // |packed| is the vector of packed words into which relocations are packed. 68 static void Encode(const std::vector<ELF::Rela>& relocations, 71 // Decode relative relocations with addends from their more compact form. [all …]
|
D | run_length_encoder.cc | 17 // relative relocations. 18 void GetDeltas(const std::vector<ELF::Rel>& relocations, in GetDeltas() argument 20 CHECK(relocations.size() >= 2); in GetDeltas() 22 for (size_t i = 0; i < relocations.size() - 1; ++i) { in GetDeltas() 23 const ELF::Rel* first = &relocations[i]; in GetDeltas() 26 const ELF::Rel* second = &relocations[i + 1]; in GetDeltas() 71 std::vector<ELF::Rel>* relocations) { in Uncondense() argument 76 relocations->push_back(initial); in Uncondense() 85 // Generate relocations for this count and delta pair. in Uncondense() 91 relocations->push_back(relocation); in Uncondense() [all …]
|
D | elf_file.cc | 49 // android packed relocations section. 200 // Notes of the dynamic relocations, packed relocations, and .dynamic in Load() 265 // Loading failed if we could not identify the relocations type. in Load() 267 LOG(ERROR) << "No relocations sections found"; in Load() 271 LOG(ERROR) << "Multiple relocations sections with different types found, " in Load() 770 // DT_RELSZ or DT_RELASZ indicate the overall size of relocations. in AdjustDynamicSectionForHole() 778 // DT_RELCOUNT or DT_RELACOUNT hold the count of relative relocations. in AdjustDynamicSectionForHole() 812 // Note if we are resizing the real dyn relocations. in ResizeSection() 850 // If resizing the dynamic relocations, rewrite the program headers to in ResizeSection() 911 void PadRelocations(size_t count, std::vector<Rel>* relocations); [all …]
|
D | packer.cc | 18 // Pack relative relocations into a run-length encoded packed 21 const std::vector<ELF::Rel>& relocations, in PackRelativeRelocations() argument 26 codec.Encode(relocations, &packed_words); in PackRelativeRelocations() 49 // Unpack relative relocations from a run-length encoded packed 53 std::vector<ELF::Rel>* relocations) { in UnpackRelativeRelocations() argument 65 codec.Decode(packed_words, relocations); in UnpackRelativeRelocations() 68 // Pack relative relocations with addends into a delta encoded packed 71 const std::vector<ELF::Rela>& relocations, in PackRelativeRelocations() argument 76 codec.Encode(relocations, &packed_words); in PackRelativeRelocations() 102 // Unpack relative relocations with addends from a delta encoded [all …]
|
D | delta_encoder.cc | 14 // Encode relative relocations with addends into a delta encoded (packed) 17 void RelocationDeltaCodec::Encode(const std::vector<ELF::Rela>& relocations, in Encode() argument 20 if (relocations.size() < 1) in Encode() 24 packed->push_back(relocations.size()); in Encode() 29 for (size_t i = 0; i < relocations.size(); ++i) { in Encode() 30 const ELF::Rela* relocation = &relocations[i]; in Encode() 40 // Decode relative relocations with addends from a delta encoded (packed) 43 std::vector<ELF::Rela>* relocations) { in Decode() argument 68 relocations->push_back(relocation); in Decode()
|
D | main.cc | 5 // Tool to pack and unpack relative relocations in a shared library. 7 // Packing removes relative relocations from .rel.dyn and writes them 11 // Invoke with -p to pad removed relocations with R_*_NONE. Suppresses 42 "Pack or unpack relative relocations in a shared library.\n\n" in PrintUsage() 43 " -u, --unpack unpack previously packed relative relocations\n" in PrintUsage() 45 " -p, --pad do not shrink relocations, but pad (for debugging)\n\n", in PrintUsage() 50 "Extracts relative relocations from the .rel.dyn section, packs them\n" in PrintUsage() 51 "into a more compact format, and stores the packed relocations in\n" in PrintUsage() 57 "To pack relocations in a shared library:\n\n" in PrintUsage() 71 "Extracts relative relocations from the .rela.dyn section, packs them\n" in PrintUsage() [all …]
|
D | elf_file.h | 7 // Provides functions to remove relative relocations from the .rel.dyn 45 // A packed shared object file has all of its relative relocations 52 // combining the relative relocations with the data already in .rel.dyn 67 // An ElfFile reads shared objects, and shuttles relative relocations 84 // Transfer relative relocations from .rel.dyn or .rela.dyn to a packed 89 // Transfer relative relocations from a packed representation in 103 bool PackTypedRelocations(const std::vector<Rel>& relocations,
|
/external/llvm/test/MC/ARM/ |
D | target-expressions.s | 3 @ RUN: | FileCheck -check-prefix CHECK-RELOCATIONS %s 70 @ CHECK-RELOCATIONS: Relocations [ 71 @ CHECK-RELOCATIONS: 0x4 R_ARM_MOVW_ABS_NC function 0x0 72 @ CHECK-RELOCATIONS: 0x8 R_ARM_MOVT_ABS function 0x0 73 @ CHECK-RELOCATIONS: 0xC R_ARM_MOVW_ABS_NC function 0x0 74 @ CHECK-RELOCATIONS: 0x10 R_ARM_MOVT_ABS function 0x0 75 @ CHECK-RELOCATIONS: 0x34 R_ARM_MOVW_ABS_NC external 0x0 76 @ CHECK-RELOCATIONS: 0x38 R_ARM_MOVT_ABS external 0x0 77 @ CHECK-RELOCATIONS: 0x3C R_ARM_MOVW_ABS_NC external 0x0 78 @ CHECK-RELOCATIONS: 0x40 R_ARM_MOVT_ABS external 0x0 [all …]
|
D | eh-directive-personalityindex.s | 28 @ CHECK: Relocations [ 57 @ CHECK: Relocations [ 90 @ CHECK: Relocations [ 127 @ CHECK: Relocations [ 161 @ CHECK: Relocations [ 196 @ CHECK: Relocations [
|
/external/llvm/test/MC/ARM/Windows/ |
D | mov32t-range.s | 2 @ RUN: | llvm-readobj -r - | FileCheck -check-prefix CHECK-RELOCATIONS %s 28 @ CHECK-RELOCATIONS: Relocations [ 29 @ CHECK-RELOCATIONS: .text { 30 @ CHECK-RELOCATIONS: 0x0 IMAGE_REL_ARM_MOV32T .rdata 31 @ CHECK-RELOCATIONS-NOT: 0x4 IMAGE_REL_ARM_MOV32T .rdata 32 @ CHECK-RELOCATIONS: } 33 @ CHECK-RELOCATIONS: ]
|
/external/chromium_org/third_party/yasm/source/patched-yasm/modules/objfmts/macho/tests/nasm64/ |
D | macho-reloc64-err.errwarn | 1 -:20: error: macho: sorry, cannot apply 32 bit absolute relocations in 64 bit mode, consider "[_sym… 2 -:21: error: macho: sorry, cannot apply 32 bit absolute relocations in 64 bit mode, consider "[_sym… 3 -:23: error: macho: sorry, cannot apply 32 bit absolute relocations in 64 bit mode, consider "[_sym… 4 -:24: error: macho: sorry, cannot apply 32 bit absolute relocations in 64 bit mode, consider "[_sym… 5 -:25: error: macho: sorry, cannot apply 32 bit absolute relocations in 64 bit mode, consider "[_sym… 6 -:26: error: macho: sorry, cannot apply 32 bit absolute relocations in 64 bit mode, consider "[_sym… 7 -:27: error: macho: sorry, cannot apply 32 bit absolute relocations in 64 bit mode, consider "[_sym…
|
/external/chromium_org/tools/relocation_packer/ |
D | README.TXT | 4 Relative relocations are the bulk of dynamic relocations (the .rel.dyn 9 encoding to store them more efficiently. Packed relocations are placed in 16 extended to understand packed relocations. Packed relocations are currently 40 32 bit ARM libraries use relocations without addends. 64 bit ARM libraries 41 use relocations with addends. The packing strategy necessarily differs for 44 Where libchrome.<version>.so contains relocations without addends, the format 52 Where libchrome.<version>.so contains relocations with addends, the format 90 To pack relocations, add an empty .android.rel.dyn or .android.rela.dyn and
|
/external/llvm/docs/ |
D | MCJITDesignAndImplementation.rst | 73 image must be loaded into suitable memory, relocations must be applied and 102 object image and for each section iterates through the relocations for 113 relocations have not yet been applied and the generated code is still not 117 relocations when loadObject completes. However, this shouldn't be 120 relocations are applied. It is possible to apply relocations multiple 148 external symbols and then apply all relocations for the object. 154 iterate through the list of relocations it has stored which are associated 160 sections and for each section iterates through a list of relocations that 163 relocations for which the symbol associated with the relocation is located 168 .. image:: MCJIT-resolve-relocations.png [all …]
|
/external/chromium_org/third_party/android_crazy_linker/src/src/ |
D | crazy_linker_elf_relocations.h | 19 // An ElfRelocations instance holds information about relocations in a mapped 38 // Apply all relocations to the target mapped ELF binary. Must be called 48 // Register packed relocations to apply. 49 // |packed_relocs| is a pointer to packed relocations data. 58 // at |map_addr|...|map_addr + size|. Only relative relocations are processed, 105 // Apply packed rel or rela relocations. On error, return false. 109 // Apply packed relocations. 111 // relocations were registered.
|
D | crazy_linker_shared_library.cpp | 65 // Extension dynamic tags for packed relocations. 184 // Read an .android.rel.dyn packed relocations section. 366 // If packed relocations are present in the target library, read the in Load() 369 LOG("%s: Packed relocations found at offset %d, %d bytes\n", in Load() 382 LOG("%s: Packed relocations stored at %p\n", in Load() 395 // Apply relocations. in Relocate() 396 LOG("%s: Applying relocations to %s\n", __FUNCTION__, base_name_); in Relocate() 398 ElfRelocations relocations; in Relocate() local 400 if (!relocations.Init(&view_, error)) in Relocate() 404 relocations.RegisterPackedRelocations(packed_relocations_); in Relocate() [all …]
|
/external/chromium_org/build/android/gyp/ |
D | pack_arm_relocations.py | 7 """Pack ARM relative relocations in a library (or copy unchanged). 17 script copies files verbatim, with no attempt to pack relative relocations. 49 # Pack R_ARM_RELATIVE relocations. 70 help=('Pack relocations if 1 and configuration name is \'Release\',' 75 parser.add_option('--android-pack-relocations', 76 help='Path to the ARM relocations packer binary')
|
/external/chromium_org/tools/gyp/test/win/ |
D | gyptest-link-fixed-base.py | 27 if 'Relocations stripped' not in GetHeaders('test_fixed_default_exe.exe'): 29 if 'Relocations stripped' in GetHeaders('test_fixed_default_dll.dll'): 33 if 'Relocations stripped' in GetHeaders('test_fixed_no.exe'): 37 if 'Relocations stripped' not in GetHeaders('test_fixed_yes.exe'):
|
/external/llvm/test/MC/COFF/ |
D | relocation-imgrel.s | 1 // COFF Image-relative relocations 3 // Test that we produce image-relative relocations (IMAGE_REL_I386_DIR32NB 17 // W32: Relocations [ 24 // W64: Relocations [
|
/external/llvm/lib/ExecutionEngine/RuntimeDyld/ |
D | RuntimeDyldImpl.h | 63 /// relocations (like ARM). 67 /// for calculating relocations in some object formats (like MachO). 77 /// RelocationEntry - used to represent relocations internally in the dynamic 198 // For each symbol, keep a list of relocations based on it. Anytime 200 // the relocations get re-resolved. 204 // Relocations to sections already loaded. Indexed by SectionID which is the 207 DenseMap<unsigned, RelocationList> Relocations; variable 209 // Relocations to external symbols that are not yet resolved. Symbols are 220 // sections containing relocations should be. Defaults to 'false'. 317 /// \brief Resolves relocations from Relocs list with address from Value. [all …]
|
/external/llvm/lib/Target/AArch64/MCTargetDesc/ |
D | AArch64MachObjectWriter.cpp | 95 "ADR/ADRP relocations must be GOT relative"); in getAArch64FixupKindMachOInfo() 136 // ADRP fixups use relocations for the whole symbol value and only in RecordRelocation() 142 // imm19 relocations are for conditional branches, which require in RecordRelocation() 154 // 14-bit branch relocations should only target internal labels, and so in RecordRelocation() 217 // We don't support PCrel relocations of differences. in RecordRelocation() 223 // AArch64 always uses external relocations. If there is no symbol to use as in RecordRelocation() 299 // Relocations inside debug sections always use local relocations when in RecordRelocation() 308 // AArch64 uses external relocations as much as possible. For debug in RecordRelocation() 309 // sections, and for pointer-sized relocations (.quad), we allow section in RecordRelocation() 310 // relocations. It's code sections that run into trouble. in RecordRelocation() [all …]
|