<!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">Or:</td></tr>
                        <td class="content">
                            <b>(gdb)</b> set args 1 2 3<br>
                            <b>(gdb)</b> run<br>
                            ...<br>
                            <b>(gdb)</b> run<br>
                            ...<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> settings set target.run-args 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">Unset environment variables for process before launching.</td></tr>
                        <td class="content">
                            <b>(gdb)</b> unset env DEBUG<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> settings remove target.env-vars DEBUG<br>
                            <b>(lldb)</b> set rem target.env-vars DEBUG<br>
                        </td>
                    </tr>

                    <tr><td class="header" colspan="2">Show the arguments that will be or were passed to the program when run.</td></tr>
                        <td class="content">
                            <b>(gdb)</b> show args<br>
                            Argument list to give program being debugged when it is started is &quot;1 2 3&quot.<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> settings show target.run-args<br>
                            target.run-args (array of strings) =<br>
                            [0]: &quot;1&quot;<br>
                            [1]: &quot;2&quot;<br>
                            [2]: &quot;3&quot;<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>
                    <tr><td class="header" colspan="2">Run until we hit line <b>12</b> or control leaves the current function.</td></tr>
                    <tr>
                        <td class="content">
                            <b>(gdb)</b> until 12
                        </td>
                        <td class="content">
                            <b>(lldb)</b> thread until 12
                        </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 functions 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++ functions 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">Set a conditional breakpoint</td></tr>

                    <tr>
                        <td class="content">
                            <b>(gdb)</b> break foo if strcmp(y,&quot;hello&quot;) == 0<br>
                        </td>
                        <td class="content">
                            <b>(lldb)</b> breakpoint set --name foo --condition '(int)strcmp(y,&quot;hello&quot;) == 0'<br>
                            <b>(lldb)</b> br s -n foo -c '(int)strcmp(y,&quot;hello&quot;) == 0'<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 the variables "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 the variables "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 0x2000<br>
                            <b>(lldb)</b> me r -o /tmp/mem.bin -b 0x1000 0x2000<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 source 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 - use the source-map instead.</i>)<br>
                        </td>
                    </tr>

                    </table>
                    <p>
                </div>

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

                <p>


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