Home
last modified time | relevance | path

Searched refs:patch (Results 1 – 19 of 19) sorted by relevance

/art/compiler/
Dcompiled_method.h189 LinkerPatch patch(literal_offset, Type::kMethod, target_dex_file); in MethodPatch()
190 patch.method_idx_ = target_method_idx; in MethodPatch()
191 return patch; in MethodPatch()
197 LinkerPatch patch(literal_offset, Type::kCall, target_dex_file); in CodePatch()
198 patch.method_idx_ = target_method_idx; in CodePatch()
199 return patch; in CodePatch()
205 LinkerPatch patch(literal_offset, Type::kCallRelative, target_dex_file); in RelativeCodePatch()
206 patch.method_idx_ = target_method_idx; in RelativeCodePatch()
207 return patch; in RelativeCodePatch()
213 LinkerPatch patch(literal_offset, Type::kType, target_dex_file); in TypePatch()
[all …]
Doat_writer.cc754 for (const LinkerPatch& patch : compiled_method->GetPatches()) { in VisitMethod() local
755 if (!patch.IsPcRelative()) { in VisitMethod()
756 writer_->absolute_patch_locations_.push_back(base_loc + patch.LiteralOffset()); in VisitMethod()
1041 for (const LinkerPatch& patch : compiled_method->GetPatches()) { in VisitMethod() local
1042 uint32_t literal_offset = patch.LiteralOffset(); in VisitMethod()
1043 switch (patch.GetType()) { in VisitMethod()
1046 uint32_t target_offset = GetTargetOffset(patch); in VisitMethod()
1054 uint32_t target_offset = GetDexCacheOffset(patch); in VisitMethod()
1056 patch, in VisitMethod()
1062 uint32_t target_offset = GetTargetObjectOffset(GetTargetString(patch)); in VisitMethod()
[all …]
/art/compiler/linker/arm64/
Drelative_patcher_arm64.cc33 inline bool IsAdrpPatch(const LinkerPatch& patch) { in IsAdrpPatch() argument
34 LinkerPatch::Type type = patch.GetType(); in IsAdrpPatch()
37 patch.LiteralOffset() == patch.PcInsnOffset(); in IsAdrpPatch()
74 for (const LinkerPatch& patch : compiled_method->GetPatches()) { in ReserveSpace() local
75 if (IsAdrpPatch(patch)) { in ReserveSpace()
90 for (const LinkerPatch& patch : compiled_method->GetPatches()) { in ReserveSpace() local
91 if (IsAdrpPatch(patch)) { in ReserveSpace()
92 uint32_t patch_offset = quick_code_offset + patch.LiteralOffset(); in ReserveSpace()
93 if (NeedsErratum843419Thunk(code, patch.LiteralOffset(), patch_offset)) { in ReserveSpace()
164 const LinkerPatch& patch, in PatchPcRelativeReference() argument
[all …]
Drelative_patcher_arm64.h41 const LinkerPatch& patch,
/art/compiler/linker/x86_64/
Drelative_patcher_x86_64.cc25 const LinkerPatch& patch, in PatchPcRelativeReference() argument
28 DCHECK_LE(patch.LiteralOffset() + 4u, code->size()); in PatchPcRelativeReference()
34 reinterpret_cast<unaligned_int32_t*>(&(*code)[patch.LiteralOffset()])[0] = displacement; in PatchPcRelativeReference()
Drelative_patcher_x86_64.h30 const LinkerPatch& patch,
/art/compiler/linker/
Drelative_patcher_test.h151 for (const LinkerPatch& patch : compiled_method->GetPatches()) { in Link() local
152 if (patch.GetType() == LinkerPatch::Type::kCallRelative) { in Link()
153 auto result = method_offset_map_.FindMethodOffset(patch.TargetMethod()); in Link()
156 patcher_->PatchCall(&patched_code_, patch.LiteralOffset(), in Link()
157 offset + patch.LiteralOffset(), target_offset); in Link()
158 } else if (patch.GetType() == LinkerPatch::Type::kDexCacheArray) { in Link()
159 uint32_t target_offset = dex_cache_arrays_begin_ + patch.TargetDexCacheElementOffset(); in Link()
161 patch, in Link()
162 offset + patch.LiteralOffset(), in Link()
164 } else if (patch.GetType() == LinkerPatch::Type::kStringRelative) { in Link()
[all …]
Dmulti_oat_relative_patcher.h107 const LinkerPatch& patch, in PatchPcRelativeReference() argument
112 relative_patcher_->PatchPcRelativeReference(code, patch, patch_offset, target_offset); in PatchPcRelativeReference()
Drelative_patcher.h108 const LinkerPatch& patch,
Drelative_patcher.cc66 const LinkerPatch& patch ATTRIBUTE_UNUSED, in Create()
Dmulti_oat_relative_patcher_test.cc90 const LinkerPatch& patch, in PatchPcRelativeReference() argument
93 last_literal_offset_ = patch.LiteralOffset(); in PatchPcRelativeReference()
/art/compiler/linker/x86/
Drelative_patcher_x86.cc25 const LinkerPatch& patch, in PatchPcRelativeReference() argument
28 uint32_t anchor_literal_offset = patch.PcInsnOffset(); in PatchPcRelativeReference()
29 uint32_t literal_offset = patch.LiteralOffset(); in PatchPcRelativeReference()
Drelative_patcher_x86.h30 const LinkerPatch& patch,
/art/compiler/linker/arm/
Drelative_patcher_arm_base.cc114 for (const LinkerPatch& patch : compiled_method->GetPatches()) { in ReserveSpaceInternal() local
115 if (patch.GetType() == LinkerPatch::Type::kCallRelative) { in ReserveSpaceInternal()
116 unprocessed_patches_.emplace_back(patch.TargetMethod(), in ReserveSpaceInternal()
117 quick_code_offset + patch.LiteralOffset()); in ReserveSpaceInternal()
Drelative_patcher_thumb2.cc60 const LinkerPatch& patch, in PatchPcRelativeReference() argument
63 uint32_t literal_offset = patch.LiteralOffset(); in PatchPcRelativeReference()
64 uint32_t pc_literal_offset = patch.PcInsnOffset(); in PatchPcRelativeReference()
Drelative_patcher_thumb2.h34 const LinkerPatch& patch,
/art/build/
DAndroid.oat.mk137 --host --android-root=$$(HOST_OUT) --include-patch-information --generate-debug-info \
272 --android-root=$$(PRODUCT_OUT)/system --include-patch-information --generate-debug-info \
/art/
DAndroid.mk391 --android-root=$(PRODUCT_OUT)/system --include-patch-information \
/art/compiler/driver/
Dcompiler_driver.cc652 for (const LinkerPatch& patch : compiled_method->GetPatches()) { in CompileMethod() local
653 if (!patch.IsPcRelative()) { in CompileMethod()