<!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 Status</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">Mac OS X Status</h1>
				<div class="postcontent">

				   <p>LLDB has matured a lot in the last year and can be used for
				      C, C++ and Objective C development for x86_64, i386 and ARM debugging.
				      The entire public API is exposed though a framework on Mac OS X which
				      is used by Xcode, the lldb command line tool, and can also be used by
				      Python. The entire public API is exposed through script bridging which
				      allows LLDB to use an embedded Python script interpreter, as well as 
				      having a Python module named "lldb" which can be used from Python
				      on the command line. This allows debug sessions to be scripted. It also
				      allows powerful debugging actions to be created and attached to a variety
				      of debugging workflows.</p>
				</div>
				<h1 class ="postheader">Linux Status</h1>
				<div class="postcontent">
					<p> LLDB is improving on Linux. While the debugserver has not been ported
					(to enable remote debugging) Linux is nearing feature completeness with Darwin
					to debug x86_64 programs, and is partially working with i386 programs.
					ARM architectures on Linux are untested.
					For more details, see the Features by OS section below.
				</div>
				<h1 class ="postheader">FreeBSD Status</h1>
				<div class="postcontent">
					<p> LLDB on FreeBSD lags behind the Linux implementation but is improving rapidly.
					For more details, see the Features by OS section below.
				</div>
				<h1 class ="postheader">Features by OS</h1>
				<div class="postcontent">
					<p> The table below shows a summary of the features that are available
					on several platforms. In addition to Linux and Mac OS X, LLDB is also
					known to work on FreeBSD. Windows support is under development.
							<table border="1">
								<tr>
									<th>Feature</th>
									<th>FreeBSD<br>(x86_64)</th>
									<th>Linux<br>(x86_64)</th>
									<th>Mac OS X (i386/x86_64 and ARM/Thumb)</th>
								</tr>
								<tr>
									<td>Backtracing</td>
									<td>OK</td>
									<td>OK</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Breakpoints
										<ul>
											<li>source-line
											<li>symbolic
											<li>C++ mangled names
											<li>module scoping
										</ul>
									</td>
									<td>OK</td>
									<td>OK</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>C++11:
									<ul>
										<li>function access
										<li>template support
										<li>dynamic types
									</ul></td>
									<td>OK</td>
									<td>OK</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Commandline lldb tool</td>
									<td>OK</td>
									<td>OK</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Core file debugging</td>
									<td>OK (ELF)</td>
									<td>OK (ELF)</td>
									<td>OK (MachO)</td>
								</tr>
								<tr>
									<td>Debugserver (remote debugging)</td>
									<td>Not ported</td>
									<td>Not ported</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Disassembly</td>
									<td>OK</td>
									<td>OK</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Expression evaluation</td>
									<td>Unknown</td>
									<td>Works with some bugs</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>JIT debugging</td>
									<td>Unknown</td>
									<td>Symbolic debugging only</td>
									<td>Untested</td>
								</tr>
								<tr>
									<td>Objective-C 2.0:
										<ul>
											<li>printing properties
											<li>synthetic properties
											<li>expressions
											<li>KVO
											<li>dynamic types
											<li>dot syntax
											<li>runtime data
											<li>stepping into/over
											<li>printing the description of an object ("po")
									</ul></td>
									<td>Unknown</td>
									<td>Not applicable</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Process control
										<ul>
											<li>attach
											<li>continue
											<li>exec, execve...
											<li>fork
											<li>launch
											<li>status
										</ul>
									</td>
									<td>Works, with some bugs</td>
									<td>OK (except exec*)</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Public Python API</td>
									<td>OK</td>
									<td>OK</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Registers (x86_64 and i386)
										<ul>
											<li>general purpose
											<li>floating point
											<li>exception state
											<li>SSE
											<li>AVX
										</ul>
									</td>
									<td>GP and FP OK</td>
									<td>OK (except for exception state registers)</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Script bridging</td>
									<td>OK</td>
									<td>OK</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Symbol reading and object file introspection</td>
									<td>OK</td>
									<td>OK</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Thread inspection and stepping</td>
									<td>Not yet implemented</td>
									<td>OK</td>
									<td>OK</td>
								</tr>
								<tr>
									<td>Watchpoints</td>
									<td>Fail</td>
									<td>OK</td>
									<td>OK</td>
								</tr>
							</table>
				</div>
				<div class="postfooter"></div>
			</div>
		</div>
	</div>
</div>
</body>
</html>
