diff options
author | Jason Molenda <jmolenda@apple.com> | 2016-01-20 05:17:13 +0000 |
---|---|---|
committer | Jason Molenda <jmolenda@apple.com> | 2016-01-20 05:17:13 +0000 |
commit | c197e81d07278db3d074a88211ca964b8cb87e76 (patch) | |
tree | 7cef22f0784c2e71184e4465784206289ee00c0a /lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp | |
parent | 3c43dc27ab3db578bbba8ecc64737554de8ec087 (diff) | |
download | bcm5719-llvm-c197e81d07278db3d074a88211ca964b8cb87e76.tar.gz bcm5719-llvm-c197e81d07278db3d074a88211ca964b8cb87e76.zip |
Some 32-bit arm corefiles on darwin may have their general purpose
register set indicated by ARM_THREAD_STATE32 (value 9) instead of
the old ARM_THREAD_STATE (value 1); this patch changes lldb to
accept either register set flavor code.
<rdar://problem/24246257>
llvm-svn: 258289
Diffstat (limited to 'lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp')
-rw-r--r-- | lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp index 9c1e1778250..a3422ec1596 100644 --- a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp +++ b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp @@ -541,6 +541,7 @@ public: lldb::offset_t next_thread_state = offset + (count * 4); switch (flavor) { + case GPRAltRegSet: case GPRRegSet: for (uint32_t i=0; i<count; ++i) { @@ -5059,7 +5060,7 @@ ObjectFileMachO::GetEntryPointAddress () switch (m_header.cputype) { case llvm::MachO::CPU_TYPE_ARM: - if (flavor == 1) // ARM_THREAD_STATE from mach/arm/thread_status.h + if (flavor == 1 || flavor == 9) // ARM_THREAD_STATE/ARM_THREAD_STATE32 from mach/arm/thread_status.h { offset += 60; // This is the offset of pc in the GPR thread state data structure. start_address = m_data.GetU32(&offset); |