/art/dex2oat/linker/ |
D | multi_oat_relative_patcher.h | 100 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 …]
|
D | relative_patcher.h | 131 uint32_t patch_offset, 137 uint32_t patch_offset, 143 uint32_t patch_offset) = 0; 148 uint32_t patch_offset) = 0;
|
D | relative_patcher.cc | 62 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()
|
D | multi_oat_relative_patcher_test.cc | 81 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/ |
D | relative_patcher_arm_base.cc | 341 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 …]
|
D | relative_patcher_thumb2.cc | 58 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 …]
|
D | relative_patcher_thumb2.h | 39 uint32_t patch_offset, 43 uint32_t patch_offset, 47 uint32_t patch_offset) override; 50 uint32_t patch_offset) override;
|
D | relative_patcher_arm_base.h | 95 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/ |
D | relative_patcher_arm64.cc | 141 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 …]
|
D | relative_patcher_arm64.h | 44 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/ |
D | relative_patcher_x86_64.cc | 27 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()
|
D | relative_patcher_x86_64.h | 31 uint32_t patch_offset, 35 uint32_t patch_offset) override; 38 uint32_t patch_offset) override;
|
/art/dex2oat/linker/x86/ |
D | relative_patcher_x86.h | 31 uint32_t patch_offset, 35 uint32_t patch_offset) override; 38 uint32_t patch_offset) override;
|
D | relative_patcher_x86.cc | 27 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()
|
D | relative_patcher_x86_base.cc | 46 uint32_t patch_offset, in PatchCall() argument 50 uint32_t displacement = target_offset - patch_offset; in PatchCall()
|
D | relative_patcher_x86_base.h | 34 uint32_t patch_offset,
|