================
@@ -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

Reply via email to