summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp')
-rw-r--r--lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
index 494785e3bd2..1cc1009dccd 100644
--- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
+++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
@@ -511,6 +511,7 @@ ProcessGDBRemote::CheckForKernel (Stream *strm)
{
m_kernel_load_addr = exe_objfile->GetHeaderAddress().GetFileAddress();
m_dyld_plugin_name = DynamicLoaderDarwinKernel::GetPluginNameStatic();
+ SetCanJIT(false);
return;
}
}
@@ -569,6 +570,7 @@ ProcessGDBRemote::CheckForKernel (Stream *strm)
{
m_kernel_load_addr = kernel_addr;
m_dyld_plugin_name = DynamicLoaderDarwinKernel::GetPluginNameStatic();
+ SetCanJIT(false);
return;
}
}
@@ -1981,6 +1983,9 @@ ProcessGDBRemote::IsAlive ()
return m_gdb_comm.IsConnected() && m_private_state.GetValue() != eStateExited;
}
+// For kernel debugging, we return the load address of the kernel binary as the
+// ImageInfoAddress and we return the DynamicLoaderDarwinKernel as the GetDynamicLoader()
+// name so the correct DynamicLoader plugin is chosen.
addr_t
ProcessGDBRemote::GetImageInfoAddress()
{
OpenPOWER on IntegriCloud