================
@@ -7,21 +7,62 @@
//===----------------------------------------------------------------------===//
#include "LLDBServerMockAcceleratorPlugin.h"
+#include "ProcessMockAccelerator.h"
+#include "Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h"
+#include "Plugins/Process/gdb-remote/ProcessGDBRemoteLog.h"
+#include "lldb/Host/ProcessLaunchInfo.h"
+#include "lldb/Host/Socket.h"
+#include "lldb/Host/common/TCPSocket.h"
+#include "lldb/Host/posix/ConnectionFileDescriptorPosix.h"
+#include "lldb/Utility/Args.h"
+#include "lldb/Utility/Connection.h"
+#include "lldb/Utility/LLDBLog.h"
+#include "lldb/Utility/Log.h"
+#include "llvm/Support/FormatVariadic.h"
+
+using namespace lldb;
using namespace lldb_private;
using namespace lldb_private::lldb_server;
+using namespace lldb_private::process_gdb_remote;
LLDBServerMockAcceleratorPlugin::LLDBServerMockAcceleratorPlugin(
- GDBServer &gdb_server, MainLoop &main_loop)
- : LLDBServerAcceleratorPlugin(gdb_server, main_loop) {}
+ GDBServer &native_gdb_server, MainLoop &native_main_loop)
+ : LLDBServerAcceleratorPlugin(native_gdb_server, native_main_loop) {
+ // Run a second gdb-remote server inside this lldb-server process (alongside
+ // the one debugging the CPU process), backed by ProcessMockAccelerator. No
+ // real process is launched or exec'd: ProcessMockAccelerator::Manager just
+ // returns a synthetic, already-stopped process with a single thread and a
+ // fixed set of registers. The client creates the accelerator target and
+ // connects it to this server.
+ m_process_manager_up =
+ std::make_unique<ProcessMockAccelerator::Manager>(m_native_main_loop);
----------------
satyajanga wrote:
done.
https://github.com/llvm/llvm-project/pull/201449
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits