From a16b9230a8012384e93cf569575f06b9f5566d12 Mon Sep 17 00:00:00 2001
From: Dan Robertson <dan.robertson@anidata.org>
Date: Wed, 10 Jan 2018 21:31:28 +0000
Subject: [PATCH] Update debugging docs

---
 README.md | 25 +++++++++++++++++--------
 1 file changed, 17 insertions(+), 8 deletions(-)

diff --git a/README.md b/README.md
index 26f1bb68..8bf172e7 100644
--- a/README.md
+++ b/README.md
@@ -15,23 +15,32 @@ a [gdb] client to connect to it. To debug the redox kernel run.
 make qemu debug=yes
 ```
 
-This will start a VM with and listen on port 1234 for a [gdb] client. Run the following
-to connect to it.
+This will start a VM with and listen on port 1234 for a [gdb] or [lldb] client.
+
+## [gdb]
+
+If you are going to use [gdb], run the following to load debug symbols and connect
+to your running kernel.
 
 ```
+(gdb) symbol-file build/kernel.sym
 (gdb) target remote localhost:1234
 ```
 
-This is great, but without debug info debugging can be quite difficult. The
-redox build process strips the kernel of debug info and copies the debug info
-to a separate file `kernel.sym`. You can import these symbols in [gdb] with
-the following
+## [lldb]
+
+If you are going to use [lldb], run the following to start debugging.
 
 ```
-(gdb) symbol-file build/kernel.sym
+(lldb) target create -s build/kernel.sym build/kernel
+(lldb) gdb-remote localhost:1234
 ```
 
-Now you can set some interesting breakpoints and `continue` the process.
+## Debugging
+
+After connecting to your kernel you can set some interesting breakpoints and `continue`
+the process. See your debuggers man page for more information on useful commands to run.
 
 [qemu]: https://www.qemu.org
 [gdb]: https://www.gnu.org/software/gdb/
+[lldb]: https://lldb.llvm.org/
-- 
GitLab