Home
last modified time | relevance | path

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

/art/dex2oat/linker/x86/
Drelative_patcher_x86.cc29 uint32_t literal_offset = patch.LiteralOffset(); in PatchPcRelativeReference() local
44 DCHECK_LE(literal_offset, code->size()); in PatchPcRelativeReference()
45 DCHECK_EQ((*code)[literal_offset + 0u], static_cast<uint8_t>(kPlaceholder32BitOffset >> 0)); in PatchPcRelativeReference()
46 DCHECK_EQ((*code)[literal_offset + 1u], static_cast<uint8_t>(kPlaceholder32BitOffset >> 8)); in PatchPcRelativeReference()
47 DCHECK_EQ((*code)[literal_offset + 2u], static_cast<uint8_t>(kPlaceholder32BitOffset >> 16)); in PatchPcRelativeReference()
48 DCHECK_EQ((*code)[literal_offset + 3u], static_cast<uint8_t>(kPlaceholder32BitOffset >> 24)); in PatchPcRelativeReference()
51 uint32_t anchor_offset = patch_offset - literal_offset + anchor_literal_offset; in PatchPcRelativeReference()
53 (*code)[literal_offset + 0u] = static_cast<uint8_t>(diff >> 0); in PatchPcRelativeReference()
54 (*code)[literal_offset + 1u] = static_cast<uint8_t>(diff >> 8); in PatchPcRelativeReference()
55 (*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.h68 static LinkerPatch IntrinsicReferencePatch(size_t literal_offset, in IntrinsicReferencePatch() argument
71 LinkerPatch patch(literal_offset, Type::kIntrinsicReference, /* target_dex_file= */ nullptr); in IntrinsicReferencePatch()
77 static LinkerPatch BootImageRelRoPatch(size_t literal_offset, in BootImageRelRoPatch() argument
80 LinkerPatch patch(literal_offset, Type::kBootImageRelRo, /* target_dex_file= */ nullptr); in BootImageRelRoPatch()
86 static LinkerPatch RelativeMethodPatch(size_t literal_offset, in RelativeMethodPatch() argument
90 LinkerPatch patch(literal_offset, Type::kMethodRelative, target_dex_file); in RelativeMethodPatch()
96 static LinkerPatch MethodBssEntryPatch(size_t literal_offset, in MethodBssEntryPatch() argument
100 LinkerPatch patch(literal_offset, Type::kMethodBssEntry, target_dex_file); in MethodBssEntryPatch()
106 static LinkerPatch RelativeJniEntrypointPatch(size_t literal_offset, in RelativeJniEntrypointPatch() argument
110 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.h34 uint32_t literal_offset,
53 static void PatchBl(std::vector<uint8_t>* code, uint32_t literal_offset, uint32_t displacement);
/art/dex2oat/linker/arm64/
Drelative_patcher_arm64.cc196 uint32_t literal_offset, in PatchCall() argument
199 DCHECK_ALIGNED(literal_offset, 4u); in PatchCall()
203 PatchBl(code, literal_offset, displacement); in PatchCall()
212 uint32_t literal_offset = patch.LiteralOffset(); in PatchPcRelativeReference() local
213 uint32_t insn = GetInsn(code, literal_offset); in PatchPcRelativeReference()
215 uint32_t disp = target_offset - ((patch_offset - literal_offset + pc_insn_offset) & ~0xfffu); in PatchPcRelativeReference()
218 if (literal_offset == pc_insn_offset) { in PatchPcRelativeReference()
221 << literal_offset << ", " << pc_insn_offset << ", 0x" << std::hex << insn; in PatchPcRelativeReference()
225 literal_offset, patch_offset)); in PatchPcRelativeReference()
252 SetInsn(code, literal_offset, insn); in PatchPcRelativeReference()
[all …]
Drelative_patcher_arm64.h39 uint32_t literal_offset,
59 static void PatchBl(std::vector<uint8_t>* code, uint32_t literal_offset, uint32_t displacement);
61 static bool NeedsErratum843419Thunk(ArrayRef<const uint8_t> code, uint32_t literal_offset,
/art/dex2oat/linker/riscv64/
Drelative_patcher_riscv64.cc55 [[maybe_unused]] uint32_t literal_offset, in PatchCall() argument
68 uint32_t literal_offset = patch.LiteralOffset(); in PatchPcRelativeReference() local
69 uint32_t insn = GetInsn(code, literal_offset); in PatchPcRelativeReference()
71 uint32_t disp = target_offset - (patch_offset - literal_offset + pc_insn_offset); in PatchPcRelativeReference()
72 if (literal_offset == pc_insn_offset) { in PatchPcRelativeReference()
75 << literal_offset << ", " << pc_insn_offset << ", 0x" << std::hex << insn; in PatchPcRelativeReference()
89 SetInsn(code, literal_offset, insn); in PatchPcRelativeReference()
Drelative_patcher_riscv64.h39 uint32_t literal_offset,
/art/compiler/optimizing/
Djit_patches_arm64.cc47 uint32_t literal_offset = literal->GetOffset(); in PatchJitRootUse() local
50 uint8_t* data = code + literal_offset; in PatchJitRootUse()
Dcode_generator_arm_vixl.cc2039 uint32_t literal_offset = info.label.GetLocation(); in Finalize() local
2040 DCHECK_ALIGNED(literal_offset, 2u); in Finalize()
2058 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
2059 uint32_t next_insn = GetInsn32(literal_offset + 4u); in Finalize()
2065 DCHECK_GE(code.size() - literal_offset, 6u); in Finalize()
2066 uint32_t next_insn = GetInsn16(literal_offset + 4u); in Finalize()
2075 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
2076 uint32_t next_insn = GetInsn32(literal_offset + 4u); in Finalize()
2087 DCHECK_GE(literal_offset, 4u); in Finalize()
2088 uint32_t prev_insn = GetInsn32(literal_offset - 4u); in Finalize()
[all …]
Dcode_generator_arm64.cc1080 uint32_t literal_offset = info.label.GetLocation(); in Finalize() local
1081 DCHECK_ALIGNED(literal_offset, 4u); in Finalize()
1098 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
1099 uint32_t next_insn = GetInsn(literal_offset + 4u); in Finalize()
1113 DCHECK_GE(code.size() - literal_offset, 8u); in Finalize()
1114 uint32_t next_insn = GetInsn(literal_offset + 4u); in Finalize()
1124 DCHECK_GE(literal_offset, 4u); in Finalize()
1125 uint32_t prev_insn = GetInsn(literal_offset - 4u); in Finalize()
5362 linker::LinkerPatch NoDexFileAdapter(size_t literal_offset, in NoDexFileAdapter() argument
5367 return Factory(literal_offset, pc_insn_offset, boot_image_offset); in NoDexFileAdapter()
Dcode_generator_riscv64.cc6616 uint32_t literal_offset = GetAssembler().GetLabelLocation(literal->GetLabel()); in PatchJitRootUse() local
6619 reinterpret_cast<uint32_t*>(code + literal_offset)[0] = dchecked_integral_cast<uint32_t>(address); in PatchJitRootUse()
6681 linker::LinkerPatch NoDexFileAdapter(size_t literal_offset, in NoDexFileAdapter() argument
6686 return Factory(literal_offset, pc_insn_offset, boot_image_offset); in NoDexFileAdapter()
Dcode_generator_x86_64.cc1436 uint32_t literal_offset = info.label.Position() - kLabelPositionToLiteralOffsetAdjustment; in EmitPcRelativeLinkerPatches() local
1438 Factory(literal_offset, info.target_dex_file, info.label.Position(), info.offset_or_index)); in EmitPcRelativeLinkerPatches()
1443 linker::LinkerPatch NoDexFileAdapter(size_t literal_offset, in NoDexFileAdapter() argument
1448 return Factory(literal_offset, pc_insn_offset, boot_image_offset); in NoDexFileAdapter()
Dcode_generator_x86.cc5837 uint32_t literal_offset = info.label.Position() - kLabelPositionToLiteralOffsetAdjustment; in EmitPcRelativeLinkerPatches() local
5838 linker_patches->push_back(Factory(literal_offset, in EmitPcRelativeLinkerPatches()
5846 linker::LinkerPatch NoDexFileAdapter(size_t literal_offset, in NoDexFileAdapter() argument
5851 return Factory(literal_offset, pc_insn_offset, boot_image_offset); in NoDexFileAdapter()
/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.cc64 [[maybe_unused]] uint32_t literal_offset, in Create() argument
Dmulti_oat_relative_patcher_test.cc80 uint32_t literal_offset, in PatchCall() argument
83 last_literal_offset_ = literal_offset; in PatchCall()
Doat_writer.cc1639 uint32_t literal_offset = patch.LiteralOffset(); in VisitMethod() local
1645 offset_ + literal_offset, in VisitMethod()
1655 offset_ + literal_offset, in VisitMethod()
1664 offset_ + literal_offset, in VisitMethod()
1672 literal_offset, in VisitMethod()
1673 offset_ + literal_offset, in VisitMethod()
1681 offset_ + literal_offset, in VisitMethod()
1690 offset_ + literal_offset, in VisitMethod()
1699 offset_ + literal_offset, in VisitMethod()
1707 offset_ + literal_offset, in VisitMethod()
[all …]