/art/compiler/linker/x86/ |
H A D | relative_patcher_x86.cc | 30 uint32_t literal_offset = patch.LiteralOffset(); local 45 DCHECK_LE(literal_offset, code->size()); 46 DCHECK_EQ((*code)[literal_offset + 0u], static_cast<uint8_t>(kDummy32BitOffset >> 0)); 47 DCHECK_EQ((*code)[literal_offset + 1u], static_cast<uint8_t>(kDummy32BitOffset >> 8)); 48 DCHECK_EQ((*code)[literal_offset + 2u], static_cast<uint8_t>(kDummy32BitOffset >> 16)); 49 DCHECK_EQ((*code)[literal_offset + 3u], static_cast<uint8_t>(kDummy32BitOffset >> 24)); 52 uint32_t anchor_offset = patch_offset - literal_offset + anchor_literal_offset; 54 (*code)[literal_offset + 0u] = static_cast<uint8_t>(diff >> 0); 55 (*code)[literal_offset + 1u] = static_cast<uint8_t>(diff >> 8); 56 (*code)[literal_offset [all...] |
H A D | relative_patcher_x86_base.cc | 45 uint32_t literal_offset, 48 DCHECK_LE(literal_offset + 4u, code->size()); 54 reinterpret_cast<unaligned_int32_t*>(&(*code)[literal_offset])[0] = displacement; 44 PatchCall(std::vector<uint8_t>* code, uint32_t literal_offset, uint32_t patch_offset, uint32_t target_offset) argument
|
/art/compiler/linker/mips/ |
H A D | relative_patcher_mips.cc | 42 uint32_t literal_offset ATTRIBUTE_UNUSED, 53 uint32_t literal_offset = patch.LiteralOffset(); local 54 bool high_patch = ((*code)[literal_offset + 0] == 0x34) && ((*code)[literal_offset + 1] == 0x12); 60 DCHECK_EQ(((*code)[literal_offset + 2] & 0x1F), 0x1E); 61 DCHECK_EQ(((*code)[literal_offset + 3] & 0xFC), 0xEC); 64 DCHECK_EQ(((*code)[literal_offset + 2] & 0xE0), 0x00); 65 DCHECK_EQ((*code)[literal_offset + 3], 0x3C); 69 CHECK_EQ((*code)[literal_offset + 0], 0x78); 70 CHECK_EQ((*code)[literal_offset [all...] |
/art/compiler/linker/mips64/ |
H A D | relative_patcher_mips64.cc | 42 uint32_t literal_offset ATTRIBUTE_UNUSED, 53 uint32_t literal_offset = patch.LiteralOffset(); local 54 bool high_patch = ((*code)[literal_offset + 0] == 0x34) && ((*code)[literal_offset + 1] == 0x12); 59 DCHECK_EQ(((*code)[literal_offset + 2] & 0x1F), 0x1E); 60 DCHECK_EQ(((*code)[literal_offset + 3] & 0xFC), 0xEC); 63 CHECK_EQ((*code)[literal_offset + 0], 0x78); 64 CHECK_EQ((*code)[literal_offset + 1], 0x56); 68 uint32_t anchor_offset = patch_offset - literal_offset + anchor_literal_offset; 78 (*code)[literal_offset [all...] |
/art/dex2oat/linker/ |
H A D | multi_oat_relative_patcher.h | 96 uint32_t literal_offset, 101 relative_patcher_->PatchCall(code, literal_offset, patch_offset, target_offset); 95 PatchCall(std::vector<uint8_t>* code, uint32_t literal_offset, uint32_t patch_offset, uint32_t target_offset) argument
|
H A D | oat_writer.cc | 1784 uint32_t literal_offset = patch.LiteralOffset(); local 1791 offset_ + literal_offset, 1799 literal_offset, 1800 offset_ + literal_offset, 1808 offset_ + literal_offset, 1816 offset_ + literal_offset, 1826 offset_ + literal_offset, 1834 offset_ + literal_offset, 1842 offset_ + literal_offset, 1851 offset_ + literal_offset, [all...] |
/art/compiler/linker/ |
H A D | linker_patch.h | 57 static LinkerPatch RelativeMethodPatch(size_t literal_offset, argument 61 LinkerPatch patch(literal_offset, Type::kMethodRelative, target_dex_file); 67 static LinkerPatch MethodBssEntryPatch(size_t literal_offset, argument 71 LinkerPatch patch(literal_offset, Type::kMethodBssEntry, target_dex_file); 77 static LinkerPatch CodePatch(size_t literal_offset, argument 80 LinkerPatch patch(literal_offset, Type::kCall, target_dex_file); 85 static LinkerPatch RelativeCodePatch(size_t literal_offset, argument 88 LinkerPatch patch(literal_offset, Type::kCallRelative, target_dex_file); 93 static LinkerPatch RelativeTypePatch(size_t literal_offset, argument 97 LinkerPatch patch(literal_offset, Typ 103 TypeClassTablePatch(size_t literal_offset, const DexFile* target_dex_file, uint32_t pc_insn_offset, uint32_t target_type_idx) argument 113 TypeBssEntryPatch(size_t literal_offset, const DexFile* target_dex_file, uint32_t pc_insn_offset, uint32_t target_type_idx) argument 123 RelativeStringPatch(size_t literal_offset, const DexFile* target_dex_file, uint32_t pc_insn_offset, uint32_t target_string_idx) argument 133 StringInternTablePatch(size_t literal_offset, const DexFile* target_dex_file, uint32_t pc_insn_offset, uint32_t target_string_idx) argument 143 StringBssEntryPatch(size_t literal_offset, const DexFile* target_dex_file, uint32_t pc_insn_offset, uint32_t target_string_idx) argument 153 BakerReadBarrierBranchPatch(size_t literal_offset, uint32_t custom_value1 = 0u, uint32_t custom_value2 = 0u) argument 250 LinkerPatch(size_t literal_offset, Type patch_type, const DexFile* target_dex_file) argument [all...] |
/art/compiler/linker/arm/ |
H A D | relative_patcher_thumb2.cc | 56 uint32_t literal_offset, 59 DCHECK_LE(literal_offset + 4u, code->size()); 60 DCHECK_EQ(literal_offset & 1u, 0u); 78 DCHECK_EQ(GetInsn32(code, literal_offset) & 0xf800d000, 0xf000d000); 80 SetInsn32(code, literal_offset, value); 87 uint32_t literal_offset = patch.LiteralOffset(); local 89 uint32_t pc_base = patch_offset + (pc_literal_offset - literal_offset) + 4u /* PC adjustment */; 92 uint32_t insn = GetInsn32(code, literal_offset); 100 SetInsn32(code, literal_offset, insn); 107 uint32_t literal_offset local 55 PatchCall(std::vector<uint8_t>* code, uint32_t literal_offset, uint32_t patch_offset, uint32_t target_offset) argument [all...] |
/art/compiler/linker/arm64/ |
H A D | relative_patcher_arm64.cc | 190 uint32_t literal_offset, 193 DCHECK_LE(literal_offset + 4u, code->size()); 194 DCHECK_EQ(literal_offset & 3u, 0u); 204 DCHECK_EQ(GetInsn(code, literal_offset) & 0xfc000000u, 0x94000000u); 206 SetInsn(code, literal_offset, insn); 215 uint32_t literal_offset = patch.LiteralOffset(); local 216 uint32_t insn = GetInsn(code, literal_offset); 218 uint32_t disp = target_offset - ((patch_offset - literal_offset + pc_insn_offset) & ~0xfffu); 221 if (literal_offset == pc_insn_offset) { 224 << literal_offset << ", " << pc_insn_offse 189 PatchCall(std::vector<uint8_t>* code, uint32_t literal_offset, uint32_t patch_offset, uint32_t target_offset) argument 312 uint32_t literal_offset = patch.LiteralOffset(); local 606 NeedsErratum843419Thunk(ArrayRef<const uint8_t> code, uint32_t literal_offset, uint32_t patch_offset) argument [all...] |
/art/compiler/optimizing/ |
H A D | code_generator_mips64.cc | 1505 uint32_t literal_offset = __ GetLabelLocation(&info.label); local 1508 linker_patches->push_back(Factory(literal_offset, dex_file, pc_rel_offset, offset_or_index)); 1650 uint32_t literal_offset = GetAssembler().GetLabelLocation(literal->GetLabel()); 1653 reinterpret_cast<uint32_t*>(code + literal_offset)[0] = dchecked_integral_cast<uint32_t>(address);
|
H A D | code_generator_mips.cc | 1589 uint32_t literal_offset = __ GetLabelLocation(&info.label); local 1596 linker_patches->push_back(Factory(literal_offset, dex_file, pc_rel_offset, offset_or_index));
|
H A D | code_generator_x86.cc | 4659 uint32_t literal_offset = info.label.Position() - kLabelPositionToLiteralOffsetAdjustment; local 4660 linker_patches->push_back(Factory(literal_offset,
|
H A D | code_generator_x86_64.cc | 1107 uint32_t literal_offset = info.label.Position() - kLabelPositionToLiteralOffsetAdjustment; local 1109 Factory(literal_offset, info.target_dex_file, info.label.Position(), info.offset_or_index));
|