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.h62 static LinkerPatch IntrinsicReferencePatch(size_t literal_offset, in IntrinsicReferencePatch() argument
65 LinkerPatch patch(literal_offset, Type::kIntrinsicReference, /* target_dex_file= */ nullptr); in IntrinsicReferencePatch()
71 static LinkerPatch DataBimgRelRoPatch(size_t literal_offset, in DataBimgRelRoPatch() argument
74 LinkerPatch patch(literal_offset, Type::kDataBimgRelRo, /* target_dex_file= */ nullptr); in DataBimgRelRoPatch()
80 static LinkerPatch RelativeMethodPatch(size_t literal_offset, in RelativeMethodPatch() argument
84 LinkerPatch patch(literal_offset, Type::kMethodRelative, target_dex_file); in RelativeMethodPatch()
90 static LinkerPatch MethodBssEntryPatch(size_t literal_offset, in MethodBssEntryPatch() argument
94 LinkerPatch patch(literal_offset, Type::kMethodBssEntry, target_dex_file); in MethodBssEntryPatch()
100 static LinkerPatch RelativeJniEntrypointPatch(size_t literal_offset, in RelativeJniEntrypointPatch() argument
104 LinkerPatch patch(literal_offset, Type::kJniEntrypointRelative, target_dex_file); in RelativeJniEntrypointPatch()
[all …]
/art/dex2oat/linker/arm/
Drelative_patcher_thumb2.cc57 uint32_t literal_offset, in PatchCall() argument
63 PatchBl(code, literal_offset, displacement); in PatchCall()
70 uint32_t literal_offset = patch.LiteralOffset(); in PatchPcRelativeReference() local
72 uint32_t pc_base = patch_offset + (pc_literal_offset - literal_offset) + 4u /* PC adjustment */; in PatchPcRelativeReference()
75 uint32_t insn = GetInsn32(code, literal_offset); in PatchPcRelativeReference()
83 SetInsn32(code, literal_offset, insn); in PatchPcRelativeReference()
101 uint32_t literal_offset = patch.LiteralOffset(); in PatchBakerReadBarrierBranch() local
102 DCHECK_ALIGNED(literal_offset, 2u); in PatchBakerReadBarrierBranch()
103 DCHECK_LT(literal_offset, code->size()); in PatchBakerReadBarrierBranch()
104 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.cc194 uint32_t literal_offset, in PatchCall() argument
197 DCHECK_ALIGNED(literal_offset, 4u); in PatchCall()
201 PatchBl(code, literal_offset, displacement); in PatchCall()
210 uint32_t literal_offset = patch.LiteralOffset(); in PatchPcRelativeReference() local
211 uint32_t insn = GetInsn(code, literal_offset); in PatchPcRelativeReference()
213 uint32_t disp = target_offset - ((patch_offset - literal_offset + pc_insn_offset) & ~0xfffu); in PatchPcRelativeReference()
216 if (literal_offset == pc_insn_offset) { in PatchPcRelativeReference()
219 << literal_offset << ", " << pc_insn_offset << ", 0x" << std::hex << insn; in PatchPcRelativeReference()
223 literal_offset, patch_offset)); in PatchPcRelativeReference()
250 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.cc1776 uint32_t literal_offset = patch.LiteralOffset(); in VisitMethod() local
1782 offset_ + literal_offset, in VisitMethod()
1792 offset_ + literal_offset, in VisitMethod()
1801 offset_ + literal_offset, in VisitMethod()
1809 literal_offset, in VisitMethod()
1810 offset_ + literal_offset, in VisitMethod()
1818 offset_ + literal_offset, in VisitMethod()
1828 offset_ + literal_offset, in VisitMethod()
1836 offset_ + literal_offset, in VisitMethod()
1845 offset_ + literal_offset, in VisitMethod()
[all …]
/art/compiler/optimizing/
Dcode_generator_arm_vixl.cc1974 uint32_t literal_offset = info.label.GetLocation(); in Finalize() local
1975 DCHECK_ALIGNED(literal_offset, 2u); in Finalize()
1993 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
1994 uint32_t next_insn = GetInsn32(literal_offset + 4u); in Finalize()
2000 DCHECK_GE(code.size() - literal_offset, 6u); in Finalize()
2001 uint32_t next_insn = GetInsn16(literal_offset + 4u); in Finalize()
2010 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
2011 uint32_t next_insn = GetInsn32(literal_offset + 4u); in Finalize()
2022 DCHECK_GE(literal_offset, 4u); in Finalize()
2023 uint32_t prev_insn = GetInsn32(literal_offset - 4u); in Finalize()
[all …]
Dcode_generator_arm64.cc988 uint32_t literal_offset = info.label.GetLocation(); in Finalize() local
989 DCHECK_ALIGNED(literal_offset, 4u); in Finalize()
1006 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
1007 uint32_t next_insn = GetInsn(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()
1032 DCHECK_GE(literal_offset, 4u); in Finalize()
1033 uint32_t prev_insn = GetInsn(literal_offset - 4u); in Finalize()
5037 linker::LinkerPatch NoDexFileAdapter(size_t literal_offset, in NoDexFileAdapter() argument
5042 return Factory(literal_offset, pc_insn_offset, boot_image_offset); in NoDexFileAdapter()
[all …]
Dcode_generator_x86_64.cc1285 uint32_t literal_offset = info.label.Position() - kLabelPositionToLiteralOffsetAdjustment; in EmitPcRelativeLinkerPatches() local
1287 Factory(literal_offset, info.target_dex_file, info.label.Position(), info.offset_or_index)); in EmitPcRelativeLinkerPatches()
1292 linker::LinkerPatch NoDexFileAdapter(size_t literal_offset, in NoDexFileAdapter() argument
1297 return Factory(literal_offset, pc_insn_offset, boot_image_offset); in NoDexFileAdapter()
Dcode_generator_x86.cc5545 uint32_t literal_offset = info.label.Position() - kLabelPositionToLiteralOffsetAdjustment; in EmitPcRelativeLinkerPatches() local
5546 linker_patches->push_back(Factory(literal_offset, in EmitPcRelativeLinkerPatches()
5554 linker::LinkerPatch NoDexFileAdapter(size_t literal_offset, in NoDexFileAdapter() argument
5559 return Factory(literal_offset, pc_insn_offset, boot_image_offset); in NoDexFileAdapter()