Skip to content

Commit 4cf7a2b

Browse files
authored
Merge pull request #4117 from apple/🍒/austria/9a88c2b63941+a765f2a04460
Cherrypick a few pointer signing patches to GitHub
2 parents 493d831 + 11f65f2 commit 4cf7a2b

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ bool ClassDescriptorV2::objc_class_t::Read(Process *process,
7878
if (ABISP abi_sp = process->GetABI()) {
7979
m_isa = abi_sp->FixCodeAddress(m_isa);
8080
m_superclass = abi_sp->FixCodeAddress(m_superclass);
81+
m_data_ptr = abi_sp->FixCodeAddress(m_data_ptr);
8182
}
8283
return true;
8384
}

lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2762,6 +2762,13 @@ AppleObjCRuntimeV2::TaggedPointerVendorRuntimeAssisted::GetClassDescriptor(
27622762
return nullptr;
27632763
actual_class_descriptor_sp =
27642764
m_runtime.GetClassDescriptorFromISA((ObjCISA)slot_data);
2765+
if (!actual_class_descriptor_sp) {
2766+
if (ABISP abi_sp = process->GetABI()) {
2767+
ObjCISA fixed_isa = abi_sp->FixCodeAddress((ObjCISA)slot_data);
2768+
actual_class_descriptor_sp =
2769+
m_runtime.GetClassDescriptorFromISA(fixed_isa);
2770+
}
2771+
}
27652772
if (!actual_class_descriptor_sp)
27662773
return ObjCLanguageRuntime::ClassDescriptorSP();
27672774
m_cache[slot] = actual_class_descriptor_sp;

0 commit comments

Comments
 (0)