<!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 to GDB Command Map</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">GDB to LLDB Command Map</h1>
                <div class="post">

                    <p>Below is a table of GDB commands with the LLDB counterparts.
                        The built in GDB-compatibility aliases in LLDB are also
                        listed.  The full lldb command names are often long, but any
                        unique short form can be used.  Instead of "<b>breakpoint set</b>",
                        "<b>br se</b>" is also acceptable.</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%">GDB</td>
                        <td class="hed" width="50%">LLDB</td>
                    </tr>

                    <tr><td class="header" colspan="2">Launch a process no arguments.</td></tr>
                        <td class="content">
                            <b>(gdb)</b> run<br>
                            <b>(gdb)</b> r
                        </td>
                        <td class="content">
                            <b>(lldb)</b> process launch<br>
                            <b>(lldb)</b> run<br>
                            <b>(lldb)</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>(gdb)</b> run &lt;args&gt;<br>
                            <b>(gdb)</b> r &lt;args&gt;
                        </td>
                        <td class="content">
                            <b>(lldb)</b> process launch -- &lt;args&gt;<br>
                            <b>(lldb)</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> gdb --args a.out 1 2 3<br>
                            <b>(gdb)</b> run<br>
                            ...<br>
                            <b>(gdb)</b> run<br>
                            ...<br>
                        </td>
                        <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>
                    </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">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> process launch --tty -- &lt;args&gt;<br>
                            <b>(lldb)</b> pro la -t -- &lt;args&gt;<br>
                        </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">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> process launch --tty=/dev/ttys006 -- &lt;args&gt;<br>
                            <b>(lldb)</b> pro la -t/dev/ttys006 -- &lt;args&gt;<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Set environment variables for process before launching.</td></tr>
                        <td class="content">
                            <b>(gdb)</b> set env DEBUG 1<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> settings set target.env-vars DEBUG=1<br>
                            <b>(lldb)</b> set se target.env-vars DEBUG=1<br>
                            <b>(lldb)</b> env DEBUG=1<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Set environment variables for process and launch process in one command.</td></tr>
                        <td class="content">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> process launch -v DEBUG=1<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Attach to a process with process ID 123.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> attach 123
                        </td>
                        <td class="content">
                            <b>(lldb)</b> process attach --pid 123<br>
                            <b>(lldb)</b> attach -p 123
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Attach to a process named "a.out".</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> attach a.out
                        </td>
                        <td class="content">
                            <b>(lldb)</b> process attach --name a.out<br>
                            <b>(lldb)</b> pro at -n 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>(gdb)</b> attach -waitfor a.out
                        </td>
                        <td class="content">
                            <b>(lldb)</b> process attach --name a.out --waitfor<br>
                            <b>(lldb)</b> pro at -n a.out -w
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Attach to a remote gdb protocol server running on system "eorgadd", port 8000.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> target remote eorgadd:8000
                        </td>
                        <td class="content">
                            <b>(lldb)</b> gdb-remote eorgadd:8000
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Attach to a remote gdb protocol server running on the local system, port 8000.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> target remote localhost:8000
                        </td>
                        <td class="content">
                            <b>(lldb)</b> gdb-remote 8000
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Attach to a Darwin kernel in kdp mode on system "eorgadd".</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> kdp-reattach eorgadd
                        </td>
                        <td class="content">
                            <b>(lldb)</b> kdp-remote eorgadd
                        </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>(gdb)</b> step<br>
                            <b>(gdb)</b> s
                        </td>
                        <td class="content">
                            <b>(lldb)</b> thread step-in<br>
                            <b>(lldb)</b> step<br>
                            <b>(lldb)</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>(gdb)</b> next<br>
                            <b>(gdb)</b> n
                        </td>
                        <td class="content">
                            <b>(lldb)</b> thread step-over<br>
                            <b>(lldb)</b> next<br>
                            <b>(lldb)</b> n<br>
                        </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>(gdb)</b> stepi<br>
                            <b>(gdb)</b> si
                        </td>
                        <td class="content">
                            <b>(lldb)</b> thread step-inst<br>
                            <b>(lldb)</b> si<br>
                        </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>(gdb)</b> nexti<br>
                            <b>(gdb)</b> ni
                        </td>
                        <td class="content">
                            <b>(lldb)</b> thread step-inst-over<br>
                            <b>(lldb)</b> ni
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Step out of the currently selected frame.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> finish<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> thread step-out<br>
                            <b>(lldb)</b> finish<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Return immediately from the currently selected frame, with an optional return value.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> return &lt;RETURN EXPRESSION&gt;<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> thread return &lt;RETURN EXPRESSION&gt;<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Backtrace and disassemble every time you stop.</td></tr>
                    <tr>
                        <td class="content">
                        </td>
                        <td class="content">
                            <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%">GDB</td>
                        <td class="hed" width="50%">LLDB</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>(gdb)</b> break main
                        </td>
                        <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>
                    </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>(gdb)</b> break test.c:12
                        </td>
                        <td class="content">
                            <b>(lldb)</b> breakpoint set --file test.c --line 12<br>
                            <b>(lldb)</b> br s -f test.c -l 12<br>
                            <b>(lldb)</b> b 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>(gdb)</b> break main<br>
                            <i>(Hope that there are no C funtions named <b>main</b>)</i>.
                        </td>
                        <td class="content">
                            <b>(lldb)</b> breakpoint set --method main<br>
                            <b>(lldb)</b> br s -M main<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Set a breakpoint at and object C function: <b>-[NSString stringWithFormat:]</b>.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> break -[NSString stringWithFormat:]<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> breakpoint set --name "-[NSString stringWithFormat:]"<br>
                            <b>(lldb)</b> b -[NSString stringWithFormat:]<br>
                        </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>(gdb)</b> break count<br>
                            <i>(Hope that there are no C or C++ funtions named <b>count</b>)</i>.
                        </td>
                        <td class="content">
                            <b>(lldb)</b> breakpoint set --selector count<br>
                            <b>(lldb)</b> br s -S count<br>
                        </td>
                    </tr>
                    <tr><td class="header" colspan="2">Set a breakpoint by regular expression on function name.</td></tr>

                    <tr>
                        <td class="content">
                            <b>(gdb)</b> rbreak regular-expression<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> breakpoint set --func-regex regular-expression<br>
                            <b>(lldb)</b> br s -r regular-expression<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Ensure that breakpoints by file and line work for #included .c/.cpp/.m files.</td></tr>

                    <tr>
                        <td class="content">
                            <b>(gdb)</b> b foo.c:12<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> settings set target.inline-breakpoint-strategy always<br>
                            <b>(lldb)</b> br s -f foo.c -l 12<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Set a breakpoint by regular expression on source file contents.</td></tr>

                    <tr>
                        <td class="content">
                            <b>(gdb)</b> shell grep -e -n pattern source-file<br>
                            <b>(gdb)</b> break source-file:CopyLineNumbers<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> breakpoint set --source-pattern regular-expression --file SourceFile<br>
                            <b>(lldb)</b> br s -p regular-expression -f file<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">List all breakpoints.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> info break<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> breakpoint list<br>
                            <b>(lldb)</b> br l<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Delete a breakpoint.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> delete 1<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> breakpoint delete 1<br>
                            <b>(lldb)</b> br del 1<br>
                        </td>
                    </tr>

                    </table>
                    <p>
                </div>
                <div class="postfooter"></div>

                <h1 class ="postheader">Watchpoint Commands</h1>
                <div class="post">

                    <p>

                    <table class="stats" width="620" cellspacing="0">
                    <tr>
                        <td class="hed" width="50%">GDB</td>
                        <td class="hed" width="50%">LLDB</td>
                    </tr>

                    <tr><td class="header" colspan="2">Set a watchpoint on a variable when it is written to.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> watch global_var
                        </td>
                        <td class="content">
                            <b>(lldb)</b> watchpoint set variable global_var<br>
                            <b>(lldb)</b> wa s v global_var<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Set a watchpoint on a memory location when it is written into. The size of the region to watch for defaults to the pointer size if no '-x byte_size' is specified.
                        This command takes raw input, evaluated as an expression returning an unsigned integer pointing to the start of the region, after the '--' option terminator.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> watch -location g_char_ptr
                        </td>
                        <td class="content">
                            <b>(lldb)</b> watchpoint set expression -- my_ptr<br>
                            <b>(lldb)</b> wa s e -- my_ptr<br>
                      </td>
                    </tr>

                    <tr><td class="header" colspan="2">Set a condition on a watchpoint</b>.</td></tr>
                    <tr>
                        <td class="content">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> watch set var global<br>
                            <b>(lldb)</b> watchpoint modify -c '(global==5)'<br>
                            <b>(lldb)</b> c<br>
                            ...<br>
                            <b>(lldb)</b> bt<br>
                            * thread #1: tid = 0x1c03, 0x0000000100000ef5 a.out`modify + 21 at main.cpp:16, stop reason = watchpoint 1<br>
                              frame #0: 0x0000000100000ef5 a.out`modify + 21 at main.cpp:16<br>
                              frame #1: 0x0000000100000eac a.out`main + 108 at main.cpp:25<br>
                              frame #2: 0x00007fff8ac9c7e1 libdyld.dylib`start + 1<br>
                            <b>(lldb)</b> frame var global<br>
                            (int32_t) global = 5<br>
                        </td>
                   </tr>

                   <tr><td class="header" colspan="2">List all watchpoints.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> info break<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> watchpoint list<br>
                            <b>(lldb)</b> watch l<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Delete a watchpoint.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> delete 1<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> watchpoint delete 1<br>
                            <b>(lldb)</b> watch del 1<br>
                        </td>
                    </tr>

                    </table>
                    <p>
                </div>

            <div class="postfooter"></div>
            <h1 class ="postheader">Examining Variables</h1>
                <div class="post">
                    <p>
                    <table class="stats" width="620" cellspacing="0">
                    <tr>
                        <td class="hed" width="50%">GDB</td>
                        <td class="hed" width="50%">LLDB</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>(gdb)</b> info args<br>
                            and<br>
                            <b>(gdb)</b> info locals<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> frame variable<br>
                            <b>(lldb)</b> fr v<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Show the local variables for the current frame.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> info locals<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> frame variable --no-args<br>
                            <b>(lldb)</b> fr v -a<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Show the contents of local variable "bar".</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> p bar<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> frame variable bar <br>
                            <b>(lldb)</b> fr v bar <br>
                            <b>(lldb)</b> p bar <br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Show the contents of local variable "bar" formatted as hex.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> p/x bar<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> frame variable --format x bar <br>
                            <b>(lldb)</b> fr v -f x bar <br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Show the contents of global variable "baz".</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> p baz<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> target variable baz <br>
                            <b>(lldb)</b> ta v baz <br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Show the global/static variables defined in the current source file.</td></tr>
                    <tr>
                        <td class="content">
                            n/a<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> target variable <br>
                            <b>(lldb)</b> ta v <br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Display a the variable "argc" and "argv" every time you stop.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> display argc<br>
                            <b>(gdb)</b> display argv<br>
                        </td>
                        <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>
                            <b>(lldb)</b> display argc<br>
                            <b>(lldb)</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">
                        </td>
                        <td class="content">
                            <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">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> target stop-hook add --classname MyClass --one-liner "frame variable *this"<br>
                            <b>(lldb)</b> ta st a -c MyClass -o "fr v *this"<br>
                        </td>
                    </tr>

                    </table>
                    <p>
                </div>




            <h1 class ="postheader">Evaluating expressions</h1>
                <div class="post">
                    <p>
                    <table class="stats" width="620" cellspacing="0">
                    <tr>
                        <td class="hed" width="50%">GDB</td>
                        <td class="hed" width="50%">LLDB</td>
                    </tr>

                    <tr><td class="header" colspan="2">Evaluating a generalized expression in the current frame.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> print (int) printf ("Print nine: %d.", 4 + 5)<br>
                              or if you don't want to see void returns: <br>
                            <b>(gdb)</b> call (int) printf ("Print nine: %d.", 4 + 5)<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> expr (int) printf ("Print nine: %d.", 4 + 5)<br>
                              or using the print alias:<br>
                            <b>(lldb)</b> print (int) printf ("Print nine: %d.", 4 + 5)<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Creating and assigning a value to a convenience variable.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> set $foo = 5<br>
                            <b>(gdb)</b> set variable $foo = 5<br>
                              or using the print command <br>
                            <b>(gdb)</b> print $foo = 5<br>
                              or using the call command <br>
                            <b>(gdb)</b> call $foo = 5<br>
                              and if you want to specify the type of the variable:
                            <b>(gdb)</b> set $foo = (unsigned int) 5<br>

                        </td>
                        <td class="content">
                          In lldb you evaluate a variable declaration expression as you would write it in C:<br>
                            <b>(lldb)</b> expr unsigned int $foo = 5<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Printing the ObjC "description" of an object.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> po [SomeClass returnAnObject]<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> expr -o -- [SomeClass returnAnObject]<br>
                              or using the po alias:<br>
                            <b>(lldb)</b> po [SomeClass returnAnObject]<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Print the dynamic type of the result of an expression.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> set print object 1<br>
                            <b>(gdb)</b> p someCPPObjectPtrOrReference<br>
                              only works for C++ objects.<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> expr -d 1 -- [SomeClass returnAnObject]<br>
                            <b>(lldb)</b> expr -d 1 -- someCPPObjectPtrOrReference<br>
                              or set dynamic type printing to be the default:
                            <b>(lldb)</b> settings set target.prefer-dynamic run-target<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Calling a function so you can stop at a breakpoint in the function.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> set unwindonsignal 0<br>
                            <b>(gdb)</b> p function_with_a_breakpoint()<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> expr -i 0 -- function_with_a_breakpoint()<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Calling a function that crashes, and stopping when the function crashes.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> set unwindonsignal 0<br>
                            <b>(gdb)</b> p function_which_crashes()<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> expr -u 0 -- function_which_crashes()<br>
                        </td>
                    </tr>


                    </table>
                    <p>
                </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%">GDB</td>
                        <td class="hed" width="50%">LLDB</td>
                    </tr>


                    <tr><td class="header" colspan="2">Show the stack backtrace for the current thread.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> bt<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> thread backtrace<br>
                            <b>(lldb)</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>(gdb)</b> thread apply all bt
                        </td>
                        <td class="content">
                            <b>(lldb)</b> thread backtrace all<br>
                            <b>(lldb)</b> bt all
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Backtrace the first five frames of the current thread.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> bt 5
                        </td>
                        <td class="content">
                            <b>(lldb)</b> thread backtrace -c 5<br>
                            <b>(lldb)</b> bt 5 (<i>lldb-169 and later</i>)<br>
                            <b>(lldb)</b> bt -c 5 (<i>lldb-168 and earlier</i>)
                        </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>(gdb)</b> frame 12
                        </td>
                        <td class="content">
                            <b>(lldb)</b> frame select 12<br>
                            <b>(lldb)</b> fr s 12<br>
                            <b>(lldb)</b> f 12<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">List information about the currently selected frame in the current thread.</td></tr>
                    <tr>
                        <td class="content">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> frame info<br>
                        </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>(gdb)</b> up
                        </td>
                        <td class="content">
                            <b>(lldb)</b> up<br>
                            <b>(lldb)</b> frame select --relative=1<br>
                        </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>(gdb)</b> down
                        </td>
                        <td class="content">
                            <b>(lldb)</b> down<br>
                            <b>(lldb)</b> frame select --relative=-1<br>
                            <b>(lldb)</b> fr s -r-1<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Select a different stack frame using a relative offset.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> up 2<br>
                            <b>(gdb)</b> down 3<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> frame select --relative 2<br>
                            <b>(lldb)</b> fr s -r2<br>
                            <br>
                            <b>(lldb)</b> frame select --relative -3<br>
                            <b>(lldb)</b> fr s -r-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>(gdb)</b> info registers<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> register read<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Write a new decimal value '123' to the current thread register 'rax'.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> p $rax = 123<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> register write rax 123<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Skip 8 bytes ahead of the current program counter (instruction pointer). Note that we use backticks to evaluate an expression and insert the scalar result in LLDB.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> jump *$pc+8<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> register write pc `$pc+8`<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Show the general purpose registers for the current thread formatted as <b>signed decimal</b>. LLDB tries to use
                         the same format characters as <b>printf(3)</b> when possible.  Type "help format" to see the full list of format specifiers.</td></tr>
                    <tr>
                        <td class="content">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> register read --format i<br>
                            <b>(lldb)</b> re r -f i<br>
							<br>
							<i>LLDB now supports the GDB shorthand format syntax but there can't be space after the command:</i><br>
                            <b>(lldb)</b> register read/d<br>
                        </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>(gdb)</b> info all-registers<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> register read --all<br>
                            <b>(lldb)</b> re r -a<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>(gdb)</b> info all-registers rax rsp rbp<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> register read 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>(gdb)</b> p/t $rax<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> register read --format binary rax<br>
                            <b>(lldb)</b> re r -f b rax<br>
							<br>
							<i>LLDB now supports the GDB shorthand format syntax but there can't be space after the command:</i><br>
							<b>(lldb)</b> register read/t rax<br>
							<b>(lldb)</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>(gdb)</b> x/4xw 0xbffff3c0<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> memory read --size 4 --format x --count 4 0xbffff3c0<br>
                            <b>(lldb)</b> me r -s4 -fx -c4 0xbffff3c0<br>
                            <b>(lldb)</b> x -s4 -fx -c4 0xbffff3c0<br>
							<br>
							<i>LLDB now supports the GDB shorthand format syntax but there can't be space after the command:</i><br>
                            <b>(lldb)</b> memory read/4xw 0xbffff3c0<br>
                            <b>(lldb)</b> x/4xw 0xbffff3c0<br>
                            <b>(lldb)</b> memory read --gdb-format 4xw 0xbffff3c0<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Read memory starting at the expression "argv[0]".</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> x argv[0]<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> memory read `argv[0]`<br>
							<i><b>NOTE:</b> any command can inline a scalar expression result (as long as the target is stopped) using backticks around any expression:</i><br>
                            <b>(lldb)</b> memory read --size `sizeof(int)` `argv[0]`<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>(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>
                        <td class="content">
                            <b>(lldb)</b> memory read --outfile /tmp/mem.txt --count 512 0xbffff3c0<br>
                            <b>(lldb)</b> me r -o/tmp/mem.txt -c512 0xbffff3c0<br>
                            <b>(lldb)</b> x/512bx -o/tmp/mem.txt 0xbffff3c0<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">
                            <b>(gdb)</b> dump memory /tmp/mem.bin 0x1000 0x2000
                        </td>
                        <td class="content">
                            <b>(lldb)</b> memory read --outfile /tmp/mem.bin --binary  0x1000 0x1200<br>
                            <b>(lldb)</b> me r -o /tmp/mem.bin -b 0x1000 0x1200<br>
                        </td>
                    </tr>
                    <tr><td class="header" colspan="2">Get information about a specific heap allocation (available on Mac OS X only).</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> info malloc 0x10010d680
                        </td>
                        <td class="content">
                            <b>(lldb)</b> command script import lldb.macosx.heap<br>
                            <b>(lldb)</b> process launch --environment MallocStackLogging=1 -- [ARGS]<br>	
                            <b>(lldb)</b> malloc_info --stack-history 0x10010d680<br>
                        </td>
                    </tr>
                    <tr><td class="header" colspan="2">Get information about a specific heap allocation and cast the result to any dynamic type that can be deduced (available on Mac OS X only)</td></tr>
                    <tr>
                        <td class="content">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> command script import lldb.macosx.heap<br>
                            <b>(lldb)</b> malloc_info --type 0x10010d680<br>
                        </td>
                    </tr>
                    <tr><td class="header" colspan="2">Find all heap blocks that contain a pointer specified by an expression EXPR (available on Mac OS X only).</td></tr>
                    <tr>
                        <td class="content">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> command script import lldb.macosx.heap<br>
                            <b>(lldb)</b> ptr_refs EXPR <br>
                        </td>
                    </tr>
                    <tr><td class="header" colspan="2">Find all heap blocks that contain a C string anywhere in the block (available on Mac OS X only).</td></tr>
                    <tr>
                        <td class="content">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> command script import lldb.macosx.heap<br>
                            <b>(lldb)</b> cstr_refs CSTRING<br>
                        </td>
                    </tr>
                    <tr><td class="header" colspan="2">Disassemble the current function for the current frame.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> disassemble
                        </td>
                        <td class="content">
                            <b>(lldb)</b> disassemble --frame<br>
                            <b>(lldb)</b> di -f
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Disassemble any functions named <b>main</b>.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> disassemble main
                        </td>
                        <td class="content">
                            <b>(lldb)</b> disassemble --name main<br>
                            <b>(lldb)</b> di -n main
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Disassemble an address range.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> disassemble 0x1eb8 0x1ec3
                        </td>
                        <td class="content">
                            <b>(lldb)</b> disassemble --start-address  0x1eb8 --end-address 0x1ec3<br>
                            <b>(lldb)</b> di -s 0x1eb8 -e 0x1ec3<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Disassemble 20 instructions from a given address.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> x/20i 0x1eb8
                        </td>
                        <td class="content">
                            <b>(lldb)</b> disassemble --start-address  0x1eb8 --count 20<br>
                            <b>(lldb)</b> di -s 0x1eb8 -c 20<br>
                        </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">
                            n/a
                        </td>
                        <td class="content">
                            <b>(lldb)</b> disassemble --frame --mixed<br>
                            <b>(lldb)</b> di -f -m
                        </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">
                            n/a
                        </td>
                        <td class="content">
                            <b>(lldb)</b> disassemble --frame --bytes<br>
                            <b>(lldb)</b> di -f -b
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Disassemble the current source line for the current frame.</td></tr>
                    <tr>
                        <td class="content">
                            n/a
                        </td>
                        <td class="content">
                            <b>(lldb)</b> disassemble --line<br>
                            <b>(lldb)</b> di -l
                        </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%">GDB</td>
                        <td class="hed" width="50%">LLDB</td>
                    </tr>


                    <tr><td class="header" colspan="2">List the main executable and all dependent shared libraries.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> info shared<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> image list<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Look up information for a raw address in the executable or any shared libraries.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> info symbol 0x1ec4<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> image lookup --address 0x1ec4<br>
                            <b>(lldb)</b> im loo -a 0x1ec4<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Look up functions matching a regular expression in a binary.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> info function &lt;FUNC_REGEX&gt;<br>
                        </td>
                        <td class="content">
                            This one finds debug symbols:<br>
                            <b>(lldb)</b> image lookup -r -n &lt;FUNC_REGEX&gt;<br><br>
                            This one finds non-debug symbols:<br>
                            <b>(lldb)</b> image lookup -r -s &lt;FUNC_REGEX&gt;<br><br>
                            Provide a list of binaries as arguments to limit the search.
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Find full souce line information.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> info line 0x1ec4<br>
                        </td>
                        <td class="content">
                          This one is a bit messy at present.  Do:<br><br>
                            <b>(lldb)</b> image lookup -v --address 0x1ec4<br><br>
                          and look for the LineEntry line, which will have the full source path and
                          line range information.<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Look up information for an address in <b>a.out</b> only.</td></tr>
                    <tr>
                        <td class="content">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> image lookup --address 0x1ec4 a.out<br>
                            <b>(lldb)</b> im loo -a 0x1ec4 a.out<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Look up information for for a type <code>Point</code> by name.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> ptype Point<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> image lookup --type Point<br>
                            <b>(lldb)</b> im loo -t 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>(gdb)</b> maintenance info sections<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> image dump 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">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> image dump sections a.out<br>
                        </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">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> image dump symtab<br>
                        </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">
                        </td>
                        <td class="content">
                            <b>(lldb)</b> image dump symtab a.out liba.so<br>
                        </td>
                    </tr>

                    </table>
                    <p>
                </div>
            <div class="postfooter"></div>
            <h1 class ="postheader">Miscellaneous</h1>
                <div class="post">
                    <p>
                    <table class="stats" width="620" cellspacing="0">
                    <tr>
                        <td class="hed" width="50%">GDB</td>
                        <td class="hed" width="50%">LLDB</td>
                    </tr>

                    <tr><td class="header" colspan="2">Echo text to the screen.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> echo Here is some text\n<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> script print &quot;Here is some text&quot;<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Remap source file pathnames for the debug session.  If your source files are no longer located in the same location as when the program was built --- maybe the program was built on a different computer --- you need to tell the debugger how to find the sources at their local file path instead of the build system's file path.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> set pathname-substitutions /buildbot/path /my/path<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> settings set target.source-map /buildbot/path /my/path<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Supply a catchall directory to search for source files in.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> directory /my/path<br>
                        </td>
                        <td class="content">
                            (<i>No equivalent command yet.)<br>
                        </td>
                    </tr>

                    </table>
                    <p>
                </div>

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

                <p>


            </div>
        </div>
    </div>
</div>
</body>
</html>
