Home
last modified time | relevance | path

Searched refs:patch_offset (Results 1 – 20 of 20) sorted by relevance

/art/dex2oat/linker/arm/
Drelative_patcher_arm_base.cc341 uint32_t ArmBaseRelativePatcher::CalculateMethodCallDisplacement(uint32_t patch_offset, in CalculateMethodCallDisplacement() argument
345 uint32_t displacement = target_offset - patch_offset; in CalculateMethodCallDisplacement()
352 method_call_thunk_->GetPendingOffset() > patch_offset); in CalculateMethodCallDisplacement()
354 method_call_thunk_->GetPendingOffset() - patch_offset <= max_positive_displacement) { in CalculateMethodCallDisplacement()
355 displacement = method_call_thunk_->GetPendingOffset() - patch_offset; in CalculateMethodCallDisplacement()
359 DCHECK_LT(method_call_thunk_->LastWrittenOffset(), patch_offset); in CalculateMethodCallDisplacement()
360 displacement = method_call_thunk_->LastWrittenOffset() - patch_offset; in CalculateMethodCallDisplacement()
367 uint32_t ArmBaseRelativePatcher::GetThunkTargetOffset(const ThunkKey& key, uint32_t patch_offset) { in GetThunkTargetOffset() argument
373 DCHECK_LT(offset, patch_offset); in GetThunkTargetOffset()
374 if (patch_offset - offset <= MaxNegativeDisplacement(key)) { in GetThunkTargetOffset()
[all …]
Drelative_patcher_thumb2.cc59 uint32_t patch_offset, in PatchCall() argument
63 DCHECK_EQ(patch_offset & 1u, 0u); in PatchCall()
65 uint32_t displacement = CalculateMethodCallDisplacement(patch_offset, target_offset & ~1u); in PatchCall()
87 uint32_t patch_offset, in PatchPcRelativeReference() argument
91 uint32_t pc_base = patch_offset + (pc_literal_offset - literal_offset) + 4u /* PC adjustment */; in PatchPcRelativeReference()
107 uint32_t patch_offset) { in PatchBakerReadBarrierBranch() argument
108 DCHECK_ALIGNED(patch_offset, 2u); in PatchBakerReadBarrierBranch()
115 uint32_t target_offset = GetThunkTargetOffset(key, patch_offset); in PatchBakerReadBarrierBranch()
117 uint32_t disp = target_offset - (patch_offset + kPcDisplacement); in PatchBakerReadBarrierBranch()
Drelative_patcher_arm_base.h93 uint32_t GetThunkTargetOffset(const ThunkKey& key, uint32_t patch_offset);
95 uint32_t CalculateMethodCallDisplacement(uint32_t patch_offset,
109 uint32_t CalculateMaxNextOffset(uint32_t patch_offset, const ThunkKey& key);
124 UnprocessedMethodCallPatch(uint32_t patch_offset, MethodReference target_method) in UnprocessedMethodCallPatch() argument
125 : patch_offset_(patch_offset), target_method_(target_method) { } in UnprocessedMethodCallPatch()
Drelative_patcher_thumb2.h39 uint32_t patch_offset,
43 uint32_t patch_offset,
47 uint32_t patch_offset) override;
/art/dex2oat/linker/
Dmulti_oat_relative_patcher.h100 uint32_t patch_offset, in PatchCall() argument
102 patch_offset += adjustment_; in PatchCall()
104 relative_patcher_->PatchCall(code, literal_offset, patch_offset, target_offset); in PatchCall()
110 uint32_t patch_offset, in PatchPcRelativeReference() argument
112 patch_offset += adjustment_; in PatchPcRelativeReference()
114 relative_patcher_->PatchPcRelativeReference(code, patch, patch_offset, target_offset); in PatchPcRelativeReference()
119 uint32_t patch_offset) { in PatchBakerReadBarrierBranch() argument
120 patch_offset += adjustment_; in PatchBakerReadBarrierBranch()
121 relative_patcher_->PatchBakerReadBarrierBranch(code, patch, patch_offset); in PatchBakerReadBarrierBranch()
Drelative_patcher.h131 uint32_t patch_offset,
137 uint32_t patch_offset,
143 uint32_t patch_offset) = 0;
Drelative_patcher.cc68 uint32_t patch_offset ATTRIBUTE_UNUSED, in Create()
75 uint32_t patch_offset ATTRIBUTE_UNUSED, in Create()
82 uint32_t patch_offset ATTRIBUTE_UNUSED) override { in Create()
Dmulti_oat_relative_patcher_test.cc81 uint32_t patch_offset, in PatchCall() argument
84 last_patch_offset_ = patch_offset; in PatchCall()
90 uint32_t patch_offset, in PatchPcRelativeReference() argument
93 last_patch_offset_ = patch_offset; in PatchPcRelativeReference()
99 uint32_t patch_offset ATTRIBUTE_UNUSED) override { in PatchBakerReadBarrierBranch()
/art/dex2oat/linker/arm64/
Drelative_patcher_arm64.cc138 uint32_t patch_offset = quick_code_offset + patch.LiteralOffset(); in ReserveSpace() local
139 if (NeedsErratum843419Thunk(code, patch.LiteralOffset(), patch_offset)) { in ReserveSpace()
140 adrp_thunk_locations_.emplace_back(patch_offset, thunk_offset); in ReserveSpace()
192 uint32_t patch_offset, uint32_t in PatchCall() argument
196 DCHECK_EQ(patch_offset & 3u, 0u); in PatchCall()
198 uint32_t displacement = CalculateMethodCallDisplacement(patch_offset, target_offset & ~1u); in PatchCall()
212 uint32_t patch_offset, in PatchPcRelativeReference() argument
214 DCHECK_EQ(patch_offset & 3u, 0u); in PatchPcRelativeReference()
219 uint32_t disp = target_offset - ((patch_offset - literal_offset + pc_insn_offset) & ~0xfffu); in PatchPcRelativeReference()
227 adrp_thunk_locations_[processed_adrp_thunks_].first == patch_offset) { in PatchPcRelativeReference()
[all …]
Drelative_patcher_arm64.h44 uint32_t patch_offset,
48 uint32_t patch_offset,
52 uint32_t patch_offset) override;
62 uint32_t patch_offset);
/art/dex2oat/linker/x86_64/
Drelative_patcher_x86_64.cc27 uint32_t patch_offset, in PatchPcRelativeReference() argument
31 uint32_t displacement = target_offset - patch_offset; in PatchPcRelativeReference()
40 uint32_t patch_offset ATTRIBUTE_UNUSED) { in PatchBakerReadBarrierBranch()
Drelative_patcher_x86_64.h31 uint32_t patch_offset,
35 uint32_t patch_offset) override;
/art/dex2oat/linker/mips64/
Drelative_patcher_mips64.cc43 uint32_t patch_offset ATTRIBUTE_UNUSED, in PatchCall()
50 uint32_t patch_offset, in PatchPcRelativeReference() argument
68 uint32_t anchor_offset = patch_offset - literal_offset + anchor_literal_offset; in PatchPcRelativeReference()
89 uint32_t patch_offset ATTRIBUTE_UNUSED) { in PatchBakerReadBarrierBranch()
Drelative_patcher_mips64.h36 uint32_t patch_offset,
40 uint32_t patch_offset,
44 uint32_t patch_offset) override;
/art/dex2oat/linker/mips/
Drelative_patcher_mips.cc43 uint32_t patch_offset ATTRIBUTE_UNUSED, in PatchCall()
50 uint32_t patch_offset, in PatchPcRelativeReference() argument
74 uint32_t anchor_offset = patch_offset - literal_offset + anchor_literal_offset; in PatchPcRelativeReference()
91 uint32_t patch_offset ATTRIBUTE_UNUSED) { in PatchBakerReadBarrierBranch()
Drelative_patcher_mips.h38 uint32_t patch_offset,
42 uint32_t patch_offset,
46 uint32_t patch_offset) override;
/art/dex2oat/linker/x86/
Drelative_patcher_x86.h31 uint32_t patch_offset,
35 uint32_t patch_offset) override;
Drelative_patcher_x86.cc27 uint32_t patch_offset, in PatchPcRelativeReference() argument
52 uint32_t anchor_offset = patch_offset - literal_offset + anchor_literal_offset; in PatchPcRelativeReference()
62 uint32_t patch_offset ATTRIBUTE_UNUSED) { in PatchBakerReadBarrierBranch()
Drelative_patcher_x86_base.cc46 uint32_t patch_offset, in PatchCall() argument
50 uint32_t displacement = target_offset - patch_offset; in PatchCall()
Drelative_patcher_x86_base.h34 uint32_t patch_offset,