Home
last modified time | relevance | path

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

/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 PatchEntrypointCall() argument
120 patch_offset += adjustment_; in PatchEntrypointCall()
121 relative_patcher_->PatchEntrypointCall(code, patch, patch_offset); in PatchEntrypointCall()
126 uint32_t patch_offset) { in PatchBakerReadBarrierBranch() argument
[all …]
Drelative_patcher.h131 uint32_t patch_offset,
137 uint32_t patch_offset,
143 uint32_t patch_offset) = 0;
148 uint32_t patch_offset) = 0;
Drelative_patcher.cc62 uint32_t patch_offset ATTRIBUTE_UNUSED, in Create()
69 uint32_t patch_offset ATTRIBUTE_UNUSED, in Create()
76 uint32_t patch_offset ATTRIBUTE_UNUSED) override { 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 PatchEntrypointCall()
105 uint32_t patch_offset ATTRIBUTE_UNUSED) override { in PatchBakerReadBarrierBranch()
/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.cc58 uint32_t patch_offset, in PatchCall() argument
60 DCHECK_ALIGNED(patch_offset, 2u); in PatchCall()
62 uint32_t displacement = CalculateMethodCallDisplacement(patch_offset, target_offset & ~1u); in PatchCall()
68 uint32_t patch_offset, in PatchPcRelativeReference() argument
72 uint32_t pc_base = patch_offset + (pc_literal_offset - literal_offset) + 4u /* PC adjustment */; in PatchPcRelativeReference()
88 uint32_t patch_offset) { in PatchEntrypointCall() argument
89 DCHECK_ALIGNED(patch_offset, 2u); in PatchEntrypointCall()
91 uint32_t target_offset = GetThunkTargetOffset(key, patch_offset); in PatchEntrypointCall()
93 uint32_t displacement = target_offset - patch_offset; in PatchEntrypointCall()
99 uint32_t patch_offset) { in PatchBakerReadBarrierBranch() argument
[all …]
Drelative_patcher_thumb2.h39 uint32_t patch_offset,
43 uint32_t patch_offset,
47 uint32_t patch_offset) override;
50 uint32_t patch_offset) override;
Drelative_patcher_arm_base.h95 uint32_t GetThunkTargetOffset(const ThunkKey& key, uint32_t patch_offset);
97 uint32_t CalculateMethodCallDisplacement(uint32_t patch_offset,
111 uint32_t CalculateMaxNextOffset(uint32_t patch_offset, const ThunkKey& key);
126 UnprocessedMethodCallPatch(uint32_t patch_offset, MethodReference target_method) in UnprocessedMethodCallPatch() argument
127 : patch_offset_(patch_offset), target_method_(target_method) { } in UnprocessedMethodCallPatch()
/art/dex2oat/linker/arm64/
Drelative_patcher_arm64.cc141 uint32_t patch_offset = quick_code_offset + patch.LiteralOffset(); in ReserveSpace() local
142 if (NeedsErratum843419Thunk(code, patch.LiteralOffset(), patch_offset)) { in ReserveSpace()
143 adrp_thunk_locations_.emplace_back(patch_offset, thunk_offset); in ReserveSpace()
195 uint32_t patch_offset, in PatchCall() argument
198 DCHECK_ALIGNED(patch_offset, 4u); in PatchCall()
200 uint32_t displacement = CalculateMethodCallDisplacement(patch_offset, target_offset & ~1u); in PatchCall()
206 uint32_t patch_offset, in PatchPcRelativeReference() argument
208 DCHECK_ALIGNED(patch_offset, 4u); in PatchPcRelativeReference()
213 uint32_t disp = target_offset - ((patch_offset - literal_offset + pc_insn_offset) & ~0xfffu); in PatchPcRelativeReference()
221 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;
55 uint32_t patch_offset) override;
66 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 PatchEntrypointCall()
46 uint32_t patch_offset ATTRIBUTE_UNUSED) { in PatchBakerReadBarrierBranch()
Drelative_patcher_x86_64.h31 uint32_t patch_offset,
35 uint32_t patch_offset) override;
38 uint32_t patch_offset) override;
/art/dex2oat/linker/x86/
Drelative_patcher_x86.h31 uint32_t patch_offset,
35 uint32_t patch_offset) override;
38 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 PatchEntrypointCall()
68 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,