diff options
author | Pavel Labath <labath@google.com> | 2015-07-21 13:20:32 +0000 |
---|---|---|
committer | Pavel Labath <labath@google.com> | 2015-07-21 13:20:32 +0000 |
commit | 19cbe96a4575ec3ba250914b914b9a0e954308ee (patch) | |
tree | 5c52ab01590881b838358b2cc1d67430a5dd5692 /lldb/source/Host/common | |
parent | c7749c3acdedc6e09a302622cd29f4bfe4672f3f (diff) | |
download | bcm5719-llvm-19cbe96a4575ec3ba250914b914b9a0e954308ee.tar.gz bcm5719-llvm-19cbe96a4575ec3ba250914b914b9a0e954308ee.zip |
[NativeProcessLinux] Integrate MainLoop
Summary:
This commit integrates MainLoop into NativeProcessLinux. By registering a SIGCHLD handler with
the llgs main loop, we can get rid of the special monitor thread in NPL, which saves as a lot of
thread ping-pong when responding to client requests (e.g. qThreadInfo processing time has been
reduced by about 40%). It also makes the code simpler, IMHO.
Reviewers: ovyalov, clayborg, tberghammer, chaoren
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D11150
This is a resubmission of r242305 after it was reverted due to bad interactions with the stdio
thread.
llvm-svn: 242783
Diffstat (limited to 'lldb/source/Host/common')
-rw-r--r-- | lldb/source/Host/common/NativeProcessProtocol.cpp | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/lldb/source/Host/common/NativeProcessProtocol.cpp b/lldb/source/Host/common/NativeProcessProtocol.cpp index 818d69bdabd..7d2f4012bf8 100644 --- a/lldb/source/Host/common/NativeProcessProtocol.cpp +++ b/lldb/source/Host/common/NativeProcessProtocol.cpp @@ -436,12 +436,6 @@ NativeProcessProtocol::DoStopIDBumped (uint32_t /* newBumpId */) // Default implementation does nothing. } -void -NativeProcessProtocol::Terminate () -{ - // Default implementation does nothing. -} - #ifndef __linux__ // These need to be implemented to support lldb-gdb-server on a given platform. Stubs are // provided to make the rest of the code link on non-supported platforms. @@ -449,6 +443,7 @@ NativeProcessProtocol::Terminate () Error NativeProcessProtocol::Launch (ProcessLaunchInfo &launch_info, NativeDelegate &native_delegate, + MainLoop &mainloop, NativeProcessProtocolSP &process_sp) { llvm_unreachable("Platform has no NativeProcessProtocol support"); @@ -457,6 +452,7 @@ NativeProcessProtocol::Launch (ProcessLaunchInfo &launch_info, Error NativeProcessProtocol::Attach (lldb::pid_t pid, NativeDelegate &native_delegate, + MainLoop &mainloop, NativeProcessProtocolSP &process_sp) { llvm_unreachable("Platform has no NativeProcessProtocol support"); |