Home
last modified time | relevance | path

Searched refs:literal_offset (Results 1 – 17 of 17) sorted by relevance

/art/dex2oat/linker/x86/
Drelative_patcher_x86.cc30 uint32_t literal_offset = patch.LiteralOffset(); in PatchPcRelativeReference() local
45 DCHECK_LE(literal_offset, code->size()); in PatchPcRelativeReference()
46 DCHECK_EQ((*code)[literal_offset + 0u], static_cast<uint8_t>(kPlaceholder32BitOffset >> 0)); in PatchPcRelativeReference()
47 DCHECK_EQ((*code)[literal_offset + 1u], static_cast<uint8_t>(kPlaceholder32BitOffset >> 8)); in PatchPcRelativeReference()
48 DCHECK_EQ((*code)[literal_offset + 2u], static_cast<uint8_t>(kPlaceholder32BitOffset >> 16)); in PatchPcRelativeReference()
49 DCHECK_EQ((*code)[literal_offset + 3u], static_cast<uint8_t>(kPlaceholder32BitOffset >> 24)); in PatchPcRelativeReference()
52 uint32_t anchor_offset = patch_offset - literal_offset + anchor_literal_offset; in PatchPcRelativeReference()
54 (*code)[literal_offset + 0u] = static_cast<uint8_t>(diff >> 0); in PatchPcRelativeReference()
55 (*code)[literal_offset + 1u] = static_cast<uint8_t>(diff >> 8); in PatchPcRelativeReference()
56 (*code)[literal_offset + 2u] = static_cast<uint8_t>(diff >> 16); in PatchPcRelativeReference()
[all …]
Drelative_patcher_x86_base.cc45 uint32_t literal_offset, in PatchCall() argument
48 DCHECK_LE(literal_offset + 4u, code->size()); in PatchCall()
54 reinterpret_cast<unaligned_int32_t*>(&(*code)[literal_offset])[0] = displacement; in PatchCall()
Drelative_patcher_x86_base.h33 uint32_t literal_offset,
/art/compiler/linker/
Dlinker_patch.h59 static LinkerPatch IntrinsicReferencePatch(size_t literal_offset, in IntrinsicReferencePatch() argument
62 LinkerPatch patch(literal_offset, Type::kIntrinsicReference, /* target_dex_file= */ nullptr); in IntrinsicReferencePatch()
68 static LinkerPatch DataBimgRelRoPatch(size_t literal_offset, in DataBimgRelRoPatch() argument
71 LinkerPatch patch(literal_offset, Type::kDataBimgRelRo, /* target_dex_file= */ nullptr); in DataBimgRelRoPatch()
77 static LinkerPatch RelativeMethodPatch(size_t literal_offset, in RelativeMethodPatch() argument
81 LinkerPatch patch(literal_offset, Type::kMethodRelative, target_dex_file); in RelativeMethodPatch()
87 static LinkerPatch MethodBssEntryPatch(size_t literal_offset, in MethodBssEntryPatch() argument
91 LinkerPatch patch(literal_offset, Type::kMethodBssEntry, target_dex_file); in MethodBssEntryPatch()
97 static LinkerPatch RelativeCodePatch(size_t literal_offset, in RelativeCodePatch() argument
100 LinkerPatch patch(literal_offset, Type::kCallRelative, target_dex_file); in RelativeCodePatch()
[all …]
/art/dex2oat/linker/arm/
Drelative_patcher_thumb2.cc58 uint32_t literal_offset, in PatchCall() argument
64 PatchBl(code, literal_offset, displacement); in PatchCall()
71 uint32_t literal_offset = patch.LiteralOffset(); in PatchPcRelativeReference() local
73 uint32_t pc_base = patch_offset + (pc_literal_offset - literal_offset) + 4u /* PC adjustment */; in PatchPcRelativeReference()
76 uint32_t insn = GetInsn32(code, literal_offset); in PatchPcRelativeReference()
84 SetInsn32(code, literal_offset, insn); in PatchPcRelativeReference()
102 uint32_t literal_offset = patch.LiteralOffset(); in PatchBakerReadBarrierBranch() local
103 DCHECK_ALIGNED(literal_offset, 2u); in PatchBakerReadBarrierBranch()
104 DCHECK_LT(literal_offset, code->size()); in PatchBakerReadBarrierBranch()
105 uint32_t insn = GetInsn32(code, literal_offset); in PatchBakerReadBarrierBranch()
[all …]
Drelative_patcher_thumb2.h38 uint32_t literal_offset,
57 static void PatchBl(std::vector<uint8_t>* code, uint32_t literal_offset, uint32_t displacement);
/art/dex2oat/linker/arm64/
Drelative_patcher_arm64.cc192 uint32_t literal_offset, in PatchCall() argument
195 DCHECK_ALIGNED(literal_offset, 4u); in PatchCall()
199 PatchBl(code, literal_offset, displacement); in PatchCall()
208 uint32_t literal_offset = patch.LiteralOffset(); in PatchPcRelativeReference() local
209 uint32_t insn = GetInsn(code, literal_offset); in PatchPcRelativeReference()
211 uint32_t disp = target_offset - ((patch_offset - literal_offset + pc_insn_offset) & ~0xfffu); in PatchPcRelativeReference()
214 if (literal_offset == pc_insn_offset) { in PatchPcRelativeReference()
217 << literal_offset << ", " << pc_insn_offset << ", 0x" << std::hex << insn; in PatchPcRelativeReference()
221 literal_offset, patch_offset)); in PatchPcRelativeReference()
248 SetInsn(code, literal_offset, insn); in PatchPcRelativeReference()
[all …]
Drelative_patcher_arm64.h43 uint32_t literal_offset,
63 static void PatchBl(std::vector<uint8_t>* code, uint32_t literal_offset, uint32_t displacement);
65 static bool NeedsErratum843419Thunk(ArrayRef<const uint8_t> code, uint32_t literal_offset,
/art/dex2oat/linker/
Dmulti_oat_relative_patcher.h99 uint32_t literal_offset, in PatchCall() argument
104 relative_patcher_->PatchCall(code, literal_offset, patch_offset, target_offset); in PatchCall()
Drelative_patcher.h130 uint32_t literal_offset,
Drelative_patcher.cc61 uint32_t literal_offset ATTRIBUTE_UNUSED, in Create()
Dmulti_oat_relative_patcher_test.cc80 uint32_t literal_offset, in PatchCall() argument
83 last_literal_offset_ = literal_offset; in PatchCall()
Doat_writer.cc1768 uint32_t literal_offset = patch.LiteralOffset(); in VisitMethod() local
1774 offset_ + literal_offset, in VisitMethod()
1784 offset_ + literal_offset, in VisitMethod()
1793 offset_ + literal_offset, in VisitMethod()
1801 literal_offset, in VisitMethod()
1802 offset_ + literal_offset, in VisitMethod()
1810 offset_ + literal_offset, in VisitMethod()
1820 offset_ + literal_offset, in VisitMethod()
1828 offset_ + literal_offset, in VisitMethod()
1837 offset_ + literal_offset, in VisitMethod()
[all …]
/art/compiler/optimizing/
Dcode_generator_arm_vixl.cc1951 uint32_t literal_offset = info.label.GetLocation(); in Finalize() local
1952 DCHECK_ALIGNED(literal_offset, 2u); in Finalize()
1970 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
1971 uint32_t next_insn = GetInsn32(literal_offset + 4u); in Finalize()
1977 DCHECK_GE(code.size() - literal_offset, 6u); in Finalize()
1978 uint32_t next_insn = GetInsn16(literal_offset + 4u); in Finalize()
1987 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
1988 uint32_t next_insn = GetInsn32(literal_offset + 4u); in Finalize()
1999 DCHECK_GE(literal_offset, 4u); in Finalize()
2000 uint32_t prev_insn = GetInsn32(literal_offset - 4u); in Finalize()
[all …]
Dcode_generator_arm64.cc1003 uint32_t literal_offset = info.label.GetLocation(); in Finalize() local
1004 DCHECK_ALIGNED(literal_offset, 4u); in Finalize()
1021 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
1022 uint32_t next_insn = GetInsn(literal_offset + 4u); in Finalize()
1036 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
1037 uint32_t next_insn = GetInsn(literal_offset + 4u); in Finalize()
1047 DCHECK_GE(literal_offset, 4u); in Finalize()
1048 uint32_t prev_insn = GetInsn(literal_offset - 4u); in Finalize()
4837 linker::LinkerPatch NoDexFileAdapter(size_t literal_offset, in NoDexFileAdapter() argument
4842 return Factory(literal_offset, pc_insn_offset, boot_image_offset); in NoDexFileAdapter()
[all …]
Dcode_generator_x86_64.cc1227 uint32_t literal_offset = info.label.Position() - kLabelPositionToLiteralOffsetAdjustment; in EmitPcRelativeLinkerPatches() local
1229 Factory(literal_offset, info.target_dex_file, info.label.Position(), info.offset_or_index)); in EmitPcRelativeLinkerPatches()
1234 linker::LinkerPatch NoDexFileAdapter(size_t literal_offset, in NoDexFileAdapter() argument
1239 return Factory(literal_offset, pc_insn_offset, boot_image_offset); in NoDexFileAdapter()
Dcode_generator_x86.cc5286 uint32_t literal_offset = info.label.Position() - kLabelPositionToLiteralOffsetAdjustment; in EmitPcRelativeLinkerPatches() local
5287 linker_patches->push_back(Factory(literal_offset, in EmitPcRelativeLinkerPatches()
5295 linker::LinkerPatch NoDexFileAdapter(size_t literal_offset, in NoDexFileAdapter() argument
5300 return Factory(literal_offset, pc_insn_offset, boot_image_offset); in NoDexFileAdapter()