<div class="doc_title">Source Level Debugging with LLVM</div>
-<table border="0" width="100%">
-<tr>
-<td valign="top">
+<table class="layout" style="width:100%">
+ <tr class="layout">
+ <td class="left">
<ul>
-
<li><a href="#introduction">Introduction</a>
<ol>
<li><a href="#phil">Philosophy behind LLVM debugging information</a></li>
</ol></li>
</ul>
</td>
-<td align="right" valign="top">
+<td class="right">
<img src="img/venusflytrap.jpg" alt="A leafy and green bug eater" width="247"
height="369">
</td>
-</tr>
-</table>
+</tr></table>
+
+<div class="doc_author">
+ <p>Written by <a href="mailto:sabre@nondot.org">Chris Lattner</a></p>
+</div>
<!-- *********************************************************************** -->
-<div class="doc_section"><a name="introduction">Introduction</a></div> <!--
-*********************************************************************** -->
+<div class="doc_section"><a name="introduction">Introduction</a></div>
+<!-- *********************************************************************** -->
<div class="doc_text">
<p>This document is the central repository for all information pertaining to
debug information in LLVM. It describes the <a href="#llvm-db">user
-interface</a> for the <a href="CommandGuide/llvm-db.html"><tt>llvm-db</tt>
-tool</a>, which provides a powerful <a href="#llvm-db">source-level debugger</a>
+interface</a> for the <tt>llvm-db</tt> tool, which provides a
+powerful <a href="#llvm-db">source-level debugger</a>
to users of LLVM-based compilers. It then describes the <a
href="#architecture">various components</a> that make up the debugger and the
libraries which future clients may use. Finally, it describes the <a
<p>For someone so inclined, it should be straight-forward to write different
front-ends for the LLVM debugger, as the LLVM debugging engine is cleanly
separated from the <tt>llvm-db</tt> front-end. A new LLVM GUI debugger or IDE
-would be nice. :)</p>
+would be nice.</p>
</div>
provides the subset of GDB commands that are applicable to LLVM debugging users.
If there is a command missing that make a reasonable amount of sense within the
<a href="#limitations">limitations of <tt>llvm-db</tt></a>, please report it as
-a bug or, better yet, submit a patch to add it. :)</p>
+a bug or, better yet, submit a patch to add it.</p>
</div>
<p>When run with no options, just <tt>llvm-db</tt>, the debugger starts up
without a program loaded at all. You must use the <a
href="#c_file"><tt>file</tt> command</a> to load a program, and the <a
-href="c_set_args"><tt>set args</tt></a> or <a href="#c_run"><tt>run</tt></a>
+href="#c_set_args"><tt>set args</tt></a> or <a href="#c_run"><tt>run</tt></a>
commands to specify the arguments for the program.</p>
<p>If you start the debugger with one argument, as <tt>llvm-db
<program></tt>, the debugger will start up and load in the specified
program. You can then optionally specify arguments to the program with the <a
-href="c_set_args"><tt>set args</tt></a> or <a href="#c_run"><tt>run</tt></a>
+href="#c_set_args"><tt>set args</tt></a> or <a href="#c_run"><tt>run</tt></a>
commands.</p>
<p>The third way to start the program is with the <tt>--args</tt> option. This
LLVM debugger. See the <a href="#ccxx_descriptors">section on the C/C++
front-end</a> for more information. Also remember that global objects
(functions, selectors, global variables, etc) must contain an <a
-href="format_common_anchors">anchor</a> to the <tt>llvm.dbg.globals</tt>
+href="#format_common_anchors">anchor</a> to the <tt>llvm.dbg.globals</tt>
variable.</p>
</div>
<div class="doc_section">
<a name="ccxx_frontend">C/C++ front-end specific debug information</a>
</div>
+<!-- *********************************************************************** -->
<div class="doc_text">