summaryrefslogtreecommitdiffstats
path: root/lldb/source
diff options
context:
space:
mode:
authorJason Molenda <jmolenda@apple.com>2014-10-06 22:23:30 +0000
committerJason Molenda <jmolenda@apple.com>2014-10-06 22:23:30 +0000
commit7dd293904dcac3a78f4079d1149a5145a46a7fdf (patch)
tree5ffac847c13fe24538a8173038758f521e765f78 /lldb/source
parent02ad9378d78e7a3d4e9520e7917e385cdb9ed711 (diff)
downloadbcm5719-llvm-7dd293904dcac3a78f4079d1149a5145a46a7fdf.tar.gz
bcm5719-llvm-7dd293904dcac3a78f4079d1149a5145a46a7fdf.zip
Add another address to check for the kernel's load addr in debug configs.
<rdar://problem/18560328> llvm-svn: 219152
Diffstat (limited to 'lldb/source')
-rw-r--r--lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp19
1 files changed, 11 insertions, 8 deletions
diff --git a/lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp b/lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
index 5047b1f2cf0..eba73d5ed61 100644
--- a/lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
+++ b/lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
@@ -256,21 +256,24 @@ DynamicLoaderDarwinKernel::SearchForKernelWithDebugHints (Process *process)
if (process->GetTarget().GetArchitecture().GetAddressByteSize() == 8)
{
addr = process->ReadUnsignedIntegerFromMemory (0xffffff8000002010ULL, 8, LLDB_INVALID_ADDRESS, read_err);
+ if (CheckForKernelImageAtAddress (addr, process).IsValid())
+ {
+ return addr;
+ }
+ addr = process->ReadUnsignedIntegerFromMemory (0xffffff8000004010ULL, 8, LLDB_INVALID_ADDRESS, read_err);
+ if (CheckForKernelImageAtAddress (addr, process).IsValid())
+ {
+ return addr;
+ }
}
else
{
addr = process->ReadUnsignedIntegerFromMemory (0xffff0110, 4, LLDB_INVALID_ADDRESS, read_err);
- }
-
- if (addr == 0)
- addr = LLDB_INVALID_ADDRESS;
-
- if (addr != LLDB_INVALID_ADDRESS)
- {
if (CheckForKernelImageAtAddress (addr, process).IsValid())
+ {
return addr;
+ }
}
-
return LLDB_INVALID_ADDRESS;
}
OpenPOWER on IntegriCloud