Document nexti, show some shorter versions of long lldb
commands.


git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@142715 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/www/lldb-gdb.html b/www/lldb-gdb.html
index e3a3ad7..d3cd221 100755
--- a/www/lldb-gdb.html
+++ b/www/lldb-gdb.html
@@ -1,664 +1,667 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

-<html xmlns="http://www.w3.org/1999/xhtml">

-<head>

-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

-<link href="style.css" rel="stylesheet" type="text/css" />

-<title>LLDB Goals</title>

-</head>

-

-<body>

-    <div class="www_title">

-      The <strong>LLDB</strong> Debugger

-    </div>

-    

-<div id="container">

-	<div id="content">

-         <!--#include virtual="sidebar.incl"-->

-		<div id="middle">

-			<div class="post">

-				<h1 class ="postheader">LLDB to GDB Command Map</h1>

-    			<div class="post">

-

-              	    <p>Below is a table of LLDB commands with the GDB counterparts.

-              	        The built in GDB compatability aliases in GDB are also

-              	        listed.</p>

-                </div>

-            	<div class="postfooter"></div>

-

-				<h1 class ="postheader">Execution Commands</h1>

-    			<div class="post">

-

-                    <p>

-

-              	    <table class="stats" width="620" cellspacing="0">

-                    <tr>

-                        <td class="hed" width="50%">LLDB</td>

-                        <td class="hed" width="50%">GDB</td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Launch a process no arguments.</td></tr>

-                        <td class="content">

-                            <b>(lldb)</b> process launch<br>

-                            <b>(lldb)</b> run<br>

-                            <b>(lldb)</b> r

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> run<br>

-                            <b>(gdb)</b> r

-                        </td>

-                    </tr>

-

-                    

-                    <tr><td class="header" colspan="2">Launch a process with arguments <code>&lt;args&gt;</code>.</td></tr>

-                        <td class="content">

-                            <b>(lldb)</b> process launch -- &lt;args&gt;<br>

-                            <b>(lldb)</b> run -- &lt;args&gt;<br>

-                            <b>(lldb)</b> r &lt;args&gt;

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> run &lt;args&gt;<br>

-                            <b>(gdb)</b> r &lt;args&gt;

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Launch a process for with arguments <b><code>a.out 1 2 3</code></b> without having to supply the args every time.</td></tr>

-                        <td class="content">

-                            <b>%</b> lldb -- a.out 1 2 3<br>

-                            <b>(lldb)</b> run<br>

-                            ...<br>

-                            <b>(lldb)</b> run<br>

-                            ...<br>

-                        </td>

-                        <td class="content">

-                            <b>%</b> gdb --args a.out 1 2 3<br>

-                            <b>(gdb)</b> run<br>

-                            ...<br>

-                            <b>(gdb)</b> run<br>

-                            ...<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Launch a process with arguments in new terminal window (Mac OS X only).</td></tr>

-                        <td class="content">

-                            <b>(lldb)</b> process launch --tty -- &lt;args&gt;<br>

-                            <b>(lldb)</b> process launch -t -- &lt;args&gt;<br>

-                        </td>

-                        <td class="content">

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Launch a process with arguments in existing terminal <cope>/dev/ttys006</code> (Mac OS X only).</td></tr>

-                        <td class="content">

-                            <b>(lldb)</b> process launch --tty=/dev/ttys006 -- &lt;args&gt;<br>

-                            <b>(lldb)</b> process launch -t/dev/ttys006 -- &lt;args&gt;<br>

-                        </td>

-                        <td class="content">

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Attach to a process with process ID 123.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> process attach --pid 123<br>

-                            <b>(lldb)</b> attach -p 123

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> attach 123

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Attach to a process named "a.out".</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> process attach --name a.out<br>

-                            <b>(lldb)</b> process attach -n a.out

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> attach a.out

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Wait for a process named "a.out" to launch and attach.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> process attach --name a.out --waitfor<br>

-                            <b>(lldb)</b> process attach -n a.out -w

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> attach -waitfor a.out

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Do a source level single step in the currently selected thread.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> thread step-in<br>

-                            <b>(lldb)</b> step<br>

-                            <b>(lldb)</b> s

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> step<br>

-                            <b>(gdb)</b> s

-                        </td>

-                    </tr>

-

-

-                    <tr><td class="header" colspan="2">Do a source level single step over in the currently selected thread.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> thread step-over<br>

-                            <b>(lldb)</b> next<br>

-                            <b>(lldb)</b> n<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> next<br>

-                            <b>(gdb)</b> n

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Do an instruction level single step in the currently selected thread.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> thread step-inst<br>

-                            <b>(lldb)</b> si<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> stepi<br>

-                            <b>(gdb)</b> si

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Do an instruction level single step over in the currently selected thread.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> thread step-inst-over<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> nexti<br>

-                            <b>(gdb)</b> ni

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Step out of the currently selected frame.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> thread step-out<br>

-                            <b>(lldb)</b> finish<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> finish<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Display a the variable "argc" and "argv" everytime you stop.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> target stop-hook add --one-liner "frame variable argc argv"<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> display argc<br>

-                            <b>(gdb)</b> display argv<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Display a the variable "argc" and "argv" only when you stop in the function named <b>main</b>.</td></tr>

-                    <tr>

-                        <td class="content" colspan="2">

-                            <b>(lldb)</b> target stop-hook add --name main --one-liner "frame variable argc argv"<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Display the variable "*this" only when you stop in c class named <b>MyClass</b>.</td></tr>

-                    <tr>

-                        <td class="content" colspan="2">

-                            <b>(lldb)</b> target stop-hook add --classname MyClass --one-liner "frame variable *this"<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Backtrace and disassemble every time you stop.</td></tr>

-                    <tr>

-                        <td class="content" colspan="2">

-                            <b>(lldb)</b> target stop-hook add"<br>

-                            Enter your stop hook command(s).  Type 'DONE' to end.<br>

-                            &gt; bt<br>

-                            &gt; disassemble --pc<br>

-                            &gt; DONE<br>

-                            Stop hook #1 added.<br>

-                        </td>

-                    </tr>

-

-                    </table>

-                    <p>

-                </div>

-        		<div class="postfooter"></div>

-

-				<h1 class ="postheader">Breakpoint Commands</h1>

-    			<div class="post">

-

-                    <p>

-

-              	    <table class="stats" width="620" cellspacing="0">

-                    <tr>

-                        <td class="hed" width="50%">LLDB</td>

-                        <td class="hed" width="50%">GDB</td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Set a breakpoint at all functions named <b>main</b>.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> breakpoint set --name main<br>

-                            <b>(lldb)</b> breakpoint set -n main<br>

-                            <b>(lldb)</b> b main

-                        </td>

-                        <td class="content">

-                            <b>(lldb)</b> break main

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Set a breakpoint in file <b>test.c</b> at line <b>12</b>.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> breakpoint set --file test.c --line 12<br>

-                            <b>(lldb)</b> breakpoint set -f test.c -l 12<br>

-                            <b>(lldb)</b> b test.c:12

-                        </td>

-                        <td class="content">

-                            <b>(lldb)</b> break test.c:12

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Set a breakpoint at all C++ methods whose basename is <b>main</b>.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> breakpoint set --method main<br>

-                            <b>(lldb)</b> breakpoint set -M main<br>

-                        </td>

-                        <td class="content">

-                            <b>(lldb)</b> break main<br>

-                            <i>(Hope that there are no C funtions named <b>main</b>)</i>.

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Set a breakpoint at all Objective C methods whose selector is <b>count</b>.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> breakpoint set --selector count<br>

-                            <b>(lldb)</b> breakpoint set -S count<br>

-                        </td>

-                        <td class="content">

-                            <b>(lldb)</b> break count<br>

-                            <i>(Hope that there are no C or C++ funtions named <b>count</b>)</i>.

-                        </td>

-                    </tr>

-

-                    </table>

-                    <p>

-                </div>

-        		<div class="postfooter"></div>

-

-				<h1 class ="postheader">Examining Thread State</h1>

-    			<div class="post">

-                    <p>

-              	    <table class="stats" width="620" cellspacing="0">

-                    <tr>

-                        <td class="hed" width="50%">LLDB</td>

-                        <td class="hed" width="50%">GDB</td>

-                    </tr>

-

-

-                    <tr><td class="header" colspan="2">Show the arguments and local variables for the current frame.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> frame variable<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> info args<br>

-                            and<br>

-                            <b>(gdb)</b> info locals<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Show the stack backtrace for the current thread.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> thread backtrace<br>

-                            <b>(lldb)</b> bt<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> bt<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Show the stack backtraces for all threads.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> thread backtrace all<br>

-                            <b>(lldb)</b> bt all

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> thread apply all bt

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Select a different stack frame by index for the current thread.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> frame select 12<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> frame 12

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Select the stack frame that called the current stack frame.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> up<br>

-                            <b>(lldb)</b> frame select --relative=1<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> up

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Select the stack frame that is called by the current stack frame.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> down<br>

-                            <b>(lldb)</b> frame select --relative=-1<br>

-                            <b>(lldb)</b> frame select -r-1<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> down

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Select a different stack frame using a relative offset.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> frame select --relative 2<br>

-                            <b>(lldb)</b> frame select -r2<br>

-                            <br>

-                            <b>(lldb)</b> frame select --relative -3<br>

-                            <b>(lldb)</b> frame select -r-3<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> up 2<br>

-                            <b>(gdb)</b> down 3<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Show the general purpose registers for the current thread.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> register read<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> info registers<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Show the general purpose registers for the current thread formatted as <b>unsigned decimal</b>. LLDB tries to use

-                         the same format characters as <b>printf</b> when possible.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> register read --format i<br>

-                            <b>(lldb)</b> register read -f i<br>

-                        </td>

-                        <td class="content">

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Show all registers in all register sets for the current thread.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> register read --all<br>

-                            <b>(lldb)</b> register read -a<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> info all-registers<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Show the values for the registers named "rax", "rsp" and "rbp" in the current thread.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> register read rax rsp rbp<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> info all-registers rax rsp rbp<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Show the values for the register named "rax" in the current thread formatted as <b>binary</b>.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> register read --format binary rax<br>

-                            <b>(lldb)</b> register read -f b rax<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> p/t $rax<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Read memory from address 0xbffff3c0 and show 4 hex uint32_t values.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> memory read --size 4 --format x --count 4 0xbffff3c0<br>

-                            <b>(lldb)</b> memory read -s4 -fx -c4 0xbffff3c0<br>

-                            <b>(lldb)</b> x -s4 -fx -c4 0xbffff3c0<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> x/4xw 0xbffff3c0<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Read 512 bytes of memory from address 0xbffff3c0 and save results to a local file as <b>text</b>.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> memory read --outfile /tmp/mem.txt --count 512 0xbffff3c0<br>

-                            <b>(lldb)</b> memory read -o/tmp/mem.txt -c512 0xbffff3c0<br>

-                        </td>

-                        <td class="content">

-                          <b>(gdb)</b> set logging on<br>

-                          <b>(gdb)</b> set logging file /tmp/mem.txt<br>

-                          <b>(gdb)</b> x/512bx 0xbffff3c0<br>

-                          <b>(gdb)</b> set logging off<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Save binary memory data starting at 0x1000 and ending at 0x2000 to a file.</td></tr>

-                    <tr>

-                        <td class="content"colspan=2>

-                            <b>(lldb)</b> memory read --outfile /tmp/mem.bin --binary  0x1000 0x1200<br>

-                            <b>(lldb)</b> memory read -o /tmp/mem.bin -b 0x1000 0x1200<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Disassemble the current function for the current frame.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> disassemble --frame<br>

-                            <b>(lldb)</b> disassemble -f

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> disassemble

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Disassemble any functions named <b>main</b>.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> disassemble --name main<br>

-                            <b>(lldb)</b> disassemble -n main

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> disassemble main

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Disassemble an address range.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> disassemble --start-address  0x1eb8 --end-address 0x1ec3<br>

-                            <b>(lldb)</b> disassemble -s 0x1eb8 -e 0x1ec3<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> disassemble 0x1eb8 0x1ec3

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Disassemble 20 instructions from a given address.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> disassemble --start-address  0x1eb8 --count 20<br>

-                            <b>(lldb)</b> disassemble -s 0x1eb8 -c 20<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> x/20i 0x1eb8

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Show mixed source and disassembly for the current function for the current frame.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> disassemble --frame --mixed<br>

-                            <b>(lldb)</b> disassemble -f -m

-                        </td>

-                        <td class="content">

-                            n/a

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Disassemble the current function for the current frame and show the opcode bytes.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> disassemble --frame --bytes<br>

-                            <b>(lldb)</b> disassemble -f -b

-                        </td>

-                        <td class="content">

-                            n/a

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Disassemble the current source line for the current frame.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> disassemble --line<br>

-                            <b>(lldb)</b> disassemble -l

-                        </td>

-                        <td class="content">

-                            n/a

-                        </td>

-                    </tr>

-

-                    </table>

-                    <p>

-                </div>

-        		<div class="postfooter"></div>

-

-				<h1 class ="postheader">Executable and Shared Library Query Commands</h1>

-    			<div class="post">

-

-                    <p>

-

-              	    <table class="stats" width="620" cellspacing="0">

-                    <tr>

-                        <td class="hed" width="50%">LLDB</td>

-                        <td class="hed" width="50%">GDB</td>

-                    </tr>

-

-

-                    <tr><td class="header" colspan="2">List the main executable and all dependent shared libraries.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> image list<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> info shared<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Lookup information for a raw address in the executable or any shared libraries.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> image lookup --address 0x1ec4<br>

-                            <b>(lldb)</b> image lookup -a 0x1ec4<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> info symbol 0x1ec4<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Lookup information for an address in <b>a.out</a> only.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> image lookup --address 0x1ec4 a.out<br>

-                            <b>(lldb)</b> image lookup -a 0x1ec4 a.out<br>

-                        </td>

-                        <td class="content">

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Lookup information for for a type <code>Point</code> by name.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> image lookup --type Point<br>

-                            <b>(lldb)</b> image lookup -t Point<br>

-                        </td>

-                        <td class="content">

-                            <b>(lldb)</b> ptype Point<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Dump all sections from the main executable and any shared libraries.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> image dump sections<br>

-                        </td>

-                        <td class="content">

-                            <b>(gdb)</b> maintenance info sections<br>

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Dump all sections in the <b>a.out</b> module.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> image dump sections a.out<br>

-                        </td>

-                        <td class="content">

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Dump all symbols from the main executable and any shared libraries.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> image dump symtab<br>

-                        </td>

-                        <td class="content">

-                        </td>

-                    </tr>

-

-                    <tr><td class="header" colspan="2">Dump all symbols in <b>a.out</b> and <b>liba.so</b>.</td></tr>

-                    <tr>

-                        <td class="content">

-                            <b>(lldb)</b> image dump symtab a.out liba.so<br>

-                        </td>

-                        <td class="content">

-                        </td>

-                    </tr>

-

-                    </table>

-                    <p>

-                </div>

-        		<div class="postfooter"></div>

-

-                <p>

-

-    			

-            </div>

-      	</div>

-	</div>

-</div>

-</body>

-</html>

+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<link href="style.css" rel="stylesheet" type="text/css" />
+<title>LLDB Goals</title>
+</head>
+
+<body>
+    <div class="www_title">
+      The <strong>LLDB</strong> Debugger
+    </div>
+    
+<div id="container">
+	<div id="content">
+         <!--#include virtual="sidebar.incl"-->
+		<div id="middle">
+			<div class="post">
+				<h1 class ="postheader">LLDB to GDB Command Map</h1>
+    			<div class="post">
+
+              	    <p>Below is a table of LLDB commands with the GDB counterparts.
+              	        The built in GDB compatability aliases in GDB are also
+              	        listed.</p>
+                </div>
+            	<div class="postfooter"></div>
+
+				<h1 class ="postheader">Execution Commands</h1>
+    			<div class="post">
+
+                    <p>
+
+              	    <table class="stats" width="620" cellspacing="0">
+                    <tr>
+                        <td class="hed" width="50%">LLDB</td>
+                        <td class="hed" width="50%">GDB</td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Launch a process no arguments.</td></tr>
+                        <td class="content">
+                            <b>(lldb)</b> process launch<br>
+                            <b>(lldb)</b> run<br>
+                            <b>(lldb)</b> r
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> run<br>
+                            <b>(gdb)</b> r
+                        </td>
+                    </tr>
+
+                    
+                    <tr><td class="header" colspan="2">Launch a process with arguments <code>&lt;args&gt;</code>.</td></tr>
+                        <td class="content">
+                            <b>(lldb)</b> process launch -- &lt;args&gt;<br>
+                            <b>(lldb)</b> run -- &lt;args&gt;<br>
+                            <b>(lldb)</b> r &lt;args&gt;
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> run &lt;args&gt;<br>
+                            <b>(gdb)</b> r &lt;args&gt;
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Launch a process for with arguments <b><code>a.out 1 2 3</code></b> without having to supply the args every time.</td></tr>
+                        <td class="content">
+                            <b>%</b> lldb -- a.out 1 2 3<br>
+                            <b>(lldb)</b> run<br>
+                            ...<br>
+                            <b>(lldb)</b> run<br>
+                            ...<br>
+                        </td>
+                        <td class="content">
+                            <b>%</b> gdb --args a.out 1 2 3<br>
+                            <b>(gdb)</b> run<br>
+                            ...<br>
+                            <b>(gdb)</b> run<br>
+                            ...<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Launch a process with arguments in new terminal window (Mac OS X only).</td></tr>
+                        <td class="content">
+                            <b>(lldb)</b> process launch --tty -- &lt;args&gt;<br>
+                            <b>(lldb)</b> process launch -t -- &lt;args&gt;<br>
+                        </td>
+                        <td class="content">
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Launch a process with arguments in existing terminal <cope>/dev/ttys006</code> (Mac OS X only).</td></tr>
+                        <td class="content">
+                            <b>(lldb)</b> process launch --tty=/dev/ttys006 -- &lt;args&gt;<br>
+                            <b>(lldb)</b> process launch -t/dev/ttys006 -- &lt;args&gt;<br>
+                        </td>
+                        <td class="content">
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Attach to a process with process ID 123.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> process attach --pid 123<br>
+                            <b>(lldb)</b> attach -p 123
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> attach 123
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Attach to a process named "a.out".</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> process attach --name a.out<br>
+                            <b>(lldb)</b> process attach -n a.out
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> attach a.out
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Wait for a process named "a.out" to launch and attach.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> process attach --name a.out --waitfor<br>
+                            <b>(lldb)</b> process attach -n a.out -w
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> attach -waitfor a.out
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Do a source level single step in the currently selected thread.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> thread step-in<br>
+                            <b>(lldb)</b> step<br>
+                            <b>(lldb)</b> s
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> step<br>
+                            <b>(gdb)</b> s
+                        </td>
+                    </tr>
+
+
+                    <tr><td class="header" colspan="2">Do a source level single step over in the currently selected thread.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> thread step-over<br>
+                            <b>(lldb)</b> next<br>
+                            <b>(lldb)</b> n<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> next<br>
+                            <b>(gdb)</b> n
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Do an instruction level single step in the currently selected thread.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> thread step-inst<br>
+                            <b>(lldb)</b> si<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> stepi<br>
+                            <b>(gdb)</b> si
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Do an instruction level single step over in the currently selected thread.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> thread step-inst-over<br>
+                            <b>(lldb)</b> ni
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> nexti<br>
+                            <b>(gdb)</b> ni
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Step out of the currently selected frame.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> thread step-out<br>
+                            <b>(lldb)</b> finish<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> finish<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Display a the variable "argc" and "argv" everytime you stop.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> target stop-hook add --one-liner "frame variable argc argv"<br>
+                            <b>(lldb)</b> ta st a -o "fr v argc argv"<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> display argc<br>
+                            <b>(gdb)</b> display argv<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Display a the variable "argc" and "argv" only when you stop in the function named <b>main</b>.</td></tr>
+                    <tr>
+                        <td class="content" colspan="2">
+                            <b>(lldb)</b> target stop-hook add --name main --one-liner "frame variable argc argv"<br>
+                            <b>(lldb)</b> ta st a -n main -o "fr v argc argv"<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Display the variable "*this" only when you stop in c class named <b>MyClass</b>.</td></tr>
+                    <tr>
+                        <td class="content" colspan="2">
+                            <b>(lldb)</b> target stop-hook add --classname MyClass --one-liner "frame variable *this"<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Backtrace and disassemble every time you stop.</td></tr>
+                    <tr>
+                        <td class="content" colspan="2">
+                            <b>(lldb)</b> target stop-hook add<br>
+                            Enter your stop hook command(s).  Type 'DONE' to end.<br>
+                            &gt; bt<br>
+                            &gt; disassemble --pc<br>
+                            &gt; DONE<br>
+                            Stop hook #1 added.<br>
+                        </td>
+                    </tr>
+
+                    </table>
+                    <p>
+                </div>
+        		<div class="postfooter"></div>
+
+				<h1 class ="postheader">Breakpoint Commands</h1>
+    			<div class="post">
+
+                    <p>
+
+              	    <table class="stats" width="620" cellspacing="0">
+                    <tr>
+                        <td class="hed" width="50%">LLDB</td>
+                        <td class="hed" width="50%">GDB</td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Set a breakpoint at all functions named <b>main</b>.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> breakpoint set --name main<br>
+                            <b>(lldb)</b> br s -n main<br>
+                            <b>(lldb)</b> b main
+                        </td>
+                        <td class="content">
+                            <b>(lldb)</b> break main
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Set a breakpoint in file <b>test.c</b> at line <b>12</b>.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> breakpoint set --file test.c --line 12<br>
+                            <b>(lldb)</b> breakpoint set -f test.c -l 12<br>
+                            <b>(lldb)</b> b test.c:12
+                        </td>
+                        <td class="content">
+                            <b>(lldb)</b> break test.c:12
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Set a breakpoint at all C++ methods whose basename is <b>main</b>.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> breakpoint set --method main<br>
+                            <b>(lldb)</b> breakpoint set -M main<br>
+                        </td>
+                        <td class="content">
+                            <b>(lldb)</b> break main<br>
+                            <i>(Hope that there are no C funtions named <b>main</b>)</i>.
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Set a breakpoint at all Objective C methods whose selector is <b>count</b>.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> breakpoint set --selector count<br>
+                            <b>(lldb)</b> breakpoint set -S count<br>
+                        </td>
+                        <td class="content">
+                            <b>(lldb)</b> break count<br>
+                            <i>(Hope that there are no C or C++ funtions named <b>count</b>)</i>.
+                        </td>
+                    </tr>
+
+                    </table>
+                    <p>
+                </div>
+        		<div class="postfooter"></div>
+
+				<h1 class ="postheader">Examining Thread State</h1>
+    			<div class="post">
+                    <p>
+              	    <table class="stats" width="620" cellspacing="0">
+                    <tr>
+                        <td class="hed" width="50%">LLDB</td>
+                        <td class="hed" width="50%">GDB</td>
+                    </tr>
+
+
+                    <tr><td class="header" colspan="2">Show the arguments and local variables for the current frame.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> frame variable<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> info args<br>
+                            and<br>
+                            <b>(gdb)</b> info locals<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Show the stack backtrace for the current thread.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> thread backtrace<br>
+                            <b>(lldb)</b> bt<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> bt<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Show the stack backtraces for all threads.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> thread backtrace all<br>
+                            <b>(lldb)</b> bt all
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> thread apply all bt
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Select a different stack frame by index for the current thread.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> frame select 12<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> frame 12
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Select the stack frame that called the current stack frame.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> up<br>
+                            <b>(lldb)</b> frame select --relative=1<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> up
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Select the stack frame that is called by the current stack frame.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> down<br>
+                            <b>(lldb)</b> frame select --relative=-1<br>
+                            <b>(lldb)</b> frame select -r-1<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> down
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Select a different stack frame using a relative offset.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> frame select --relative 2<br>
+                            <b>(lldb)</b> frame select -r2<br>
+                            <br>
+                            <b>(lldb)</b> frame select --relative -3<br>
+                            <b>(lldb)</b> frame select -r-3<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> up 2<br>
+                            <b>(gdb)</b> down 3<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Show the general purpose registers for the current thread.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> register read<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> info registers<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Show the general purpose registers for the current thread formatted as <b>unsigned decimal</b>. LLDB tries to use
+                         the same format characters as <b>printf</b> when possible.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> register read --format i<br>
+                            <b>(lldb)</b> register read -f i<br>
+                        </td>
+                        <td class="content">
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Show all registers in all register sets for the current thread.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> register read --all<br>
+                            <b>(lldb)</b> register read -a<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> info all-registers<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Show the values for the registers named "rax", "rsp" and "rbp" in the current thread.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> register read rax rsp rbp<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> info all-registers rax rsp rbp<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Show the values for the register named "rax" in the current thread formatted as <b>binary</b>.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> register read --format binary rax<br>
+                            <b>(lldb)</b> register read -f b rax<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> p/t $rax<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Read memory from address 0xbffff3c0 and show 4 hex uint32_t values.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> memory read --size 4 --format x --count 4 0xbffff3c0<br>
+                            <b>(lldb)</b> memory read -s4 -fx -c4 0xbffff3c0<br>
+                            <b>(lldb)</b> x -s4 -fx -c4 0xbffff3c0<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> x/4xw 0xbffff3c0<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Read 512 bytes of memory from address 0xbffff3c0 and save results to a local file as <b>text</b>.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> memory read --outfile /tmp/mem.txt --count 512 0xbffff3c0<br>
+                            <b>(lldb)</b> memory read -o/tmp/mem.txt -c512 0xbffff3c0<br>
+                        </td>
+                        <td class="content">
+                          <b>(gdb)</b> set logging on<br>
+                          <b>(gdb)</b> set logging file /tmp/mem.txt<br>
+                          <b>(gdb)</b> x/512bx 0xbffff3c0<br>
+                          <b>(gdb)</b> set logging off<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Save binary memory data starting at 0x1000 and ending at 0x2000 to a file.</td></tr>
+                    <tr>
+                        <td class="content"colspan=2>
+                            <b>(lldb)</b> memory read --outfile /tmp/mem.bin --binary  0x1000 0x1200<br>
+                            <b>(lldb)</b> memory read -o /tmp/mem.bin -b 0x1000 0x1200<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Disassemble the current function for the current frame.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> disassemble --frame<br>
+                            <b>(lldb)</b> disassemble -f
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> disassemble
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Disassemble any functions named <b>main</b>.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> disassemble --name main<br>
+                            <b>(lldb)</b> disassemble -n main
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> disassemble main
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Disassemble an address range.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> disassemble --start-address  0x1eb8 --end-address 0x1ec3<br>
+                            <b>(lldb)</b> disassemble -s 0x1eb8 -e 0x1ec3<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> disassemble 0x1eb8 0x1ec3
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Disassemble 20 instructions from a given address.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> disassemble --start-address  0x1eb8 --count 20<br>
+                            <b>(lldb)</b> disassemble -s 0x1eb8 -c 20<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> x/20i 0x1eb8
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Show mixed source and disassembly for the current function for the current frame.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> disassemble --frame --mixed<br>
+                            <b>(lldb)</b> disassemble -f -m
+                        </td>
+                        <td class="content">
+                            n/a
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Disassemble the current function for the current frame and show the opcode bytes.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> disassemble --frame --bytes<br>
+                            <b>(lldb)</b> disassemble -f -b
+                        </td>
+                        <td class="content">
+                            n/a
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Disassemble the current source line for the current frame.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> disassemble --line<br>
+                            <b>(lldb)</b> disassemble -l
+                        </td>
+                        <td class="content">
+                            n/a
+                        </td>
+                    </tr>
+
+                    </table>
+                    <p>
+                </div>
+        		<div class="postfooter"></div>
+
+				<h1 class ="postheader">Executable and Shared Library Query Commands</h1>
+    			<div class="post">
+
+                    <p>
+
+              	    <table class="stats" width="620" cellspacing="0">
+                    <tr>
+                        <td class="hed" width="50%">LLDB</td>
+                        <td class="hed" width="50%">GDB</td>
+                    </tr>
+
+
+                    <tr><td class="header" colspan="2">List the main executable and all dependent shared libraries.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> image list<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> info shared<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Lookup information for a raw address in the executable or any shared libraries.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> image lookup --address 0x1ec4<br>
+                            <b>(lldb)</b> image lookup -a 0x1ec4<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> info symbol 0x1ec4<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Lookup information for an address in <b>a.out</a> only.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> image lookup --address 0x1ec4 a.out<br>
+                            <b>(lldb)</b> image lookup -a 0x1ec4 a.out<br>
+                        </td>
+                        <td class="content">
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Lookup information for for a type <code>Point</code> by name.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> image lookup --type Point<br>
+                            <b>(lldb)</b> image lookup -t Point<br>
+                        </td>
+                        <td class="content">
+                            <b>(lldb)</b> ptype Point<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Dump all sections from the main executable and any shared libraries.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> image dump sections<br>
+                        </td>
+                        <td class="content">
+                            <b>(gdb)</b> maintenance info sections<br>
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Dump all sections in the <b>a.out</b> module.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> image dump sections a.out<br>
+                        </td>
+                        <td class="content">
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Dump all symbols from the main executable and any shared libraries.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> image dump symtab<br>
+                        </td>
+                        <td class="content">
+                        </td>
+                    </tr>
+
+                    <tr><td class="header" colspan="2">Dump all symbols in <b>a.out</b> and <b>liba.so</b>.</td></tr>
+                    <tr>
+                        <td class="content">
+                            <b>(lldb)</b> image dump symtab a.out liba.so<br>
+                        </td>
+                        <td class="content">
+                        </td>
+                    </tr>
+
+                    </table>
+                    <p>
+                </div>
+        		<div class="postfooter"></div>
+
+                <p>
+
+    			
+            </div>
+      	</div>
+	</div>
+</div>
+</body>
+</html>