summaryrefslogtreecommitdiffstats
path: root/lldb
diff options
context:
space:
mode:
Diffstat (limited to 'lldb')
-rw-r--r--lldb/docs/building-with-debug-llvm.txt51
-rw-r--r--lldb/packages/Python/lldbsuite/test/functionalities/command_source/TestCommandSource.py2
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/objc/objc-optimized/TestObjcOptimized.py1
-rw-r--r--lldb/utils/vim-lldb/doc/lldb.txt2
-rw-r--r--lldb/www/adding-language-support.html10
-rwxr-xr-xlldb/www/build.html51
-rwxr-xr-xlldb/www/index.html2
-rwxr-xr-xlldb/www/python-reference.html6
-rwxr-xr-xlldb/www/scripting.html6
-rw-r--r--lldb/www/sidebar.incl3
-rwxr-xr-xlldb/www/source.html20
-rwxr-xr-xlldb/www/symbolication.html4
-rwxr-xr-xlldb/www/varformats.html16
13 files changed, 33 insertions, 141 deletions
diff --git a/lldb/docs/building-with-debug-llvm.txt b/lldb/docs/building-with-debug-llvm.txt
deleted file mode 100644
index af1bcf8856b..00000000000
--- a/lldb/docs/building-with-debug-llvm.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-This document describes how to build a debug version of LLVM for use with
-LLDB, and how to make LLDB use it.
-
-It assumes that you are using the Xcode 3 series (I used 3.2.4) to build
-LLDB. It also assumes that your shell is /bin/bash, and that you are
-currently at a shell prompt in a checked-out LLDB repository.
-
-1. Check out LLVM and Clang from their repositories. To determine
- the revision to use, consult scripts/build-llvm.pl (this is done
- in the first command line below). !!! WARNING Do not use the
- name "llvm" for your checkout, for reasons described in part 3
- below.
-
- $ export CLANG_REVISION=`cat scripts/build-llvm.pl | grep ^our.*llvm_revision | cut -d \' -f 2,2`
- $ svn co -r $CLANG_REVISION http://llvm.org/svn/llvm-project/llvm/trunk llvm.checkout
- $ svn co -r $CLANG_REVISION http://llvm.org/svn/llvm-project/cfe/trunk llvm.checkout/tools/clang
-
-2. Configure LLVM/Clang with the proper options and compilers. I use:
-
- $ cd llvm.checkout
- $ CC="cc -g -O0" CXX="c++ -g -O0" ./configure --disable-optimized --enable-assertions --enable-targets=x86_64,arm
- $ CC="cc -g -O0" CXX="c++ -g -O0" make -j 2
- $ cd ..
-
-3. Create a link to the built LLVM. !!! WARNING: Do not rename the
- directory! The LLVM builder script that runs as part of the Xcode
- build keys off the fact that llvm/ is a symlink to recognize that
- we are building with a custom debug build.
-
- $ ln -sf llvm.checkout llvm
-
-4. Make sure that your Xcode project is set up correctly. Open
- lldb.xcodeproj and do the following:
-
- Under "Targets" in the Groups & Files navigator, double-click
- lldb-tool. In the resulting window, select "Debug" from the
- "Configuration:" drop-down. Then, make sure that the setting
- "Build Active Architecture Only" is enabled. Close the window.
-
- Under "Targets" in the Groups & Files navigator, double-click
- LLDB. In the resulting window, select "Debug" from the
- "Configuration:" drop-down. Then, make sure that the setting
- "Build Active Architecture Only" is enabled. Close the window.
-
-5. Ensure that Xcode is building the lldb-tool target in Debug
- configuration for your architecture (typically x86_64). You
- can usually pick these options from the Overview drop-down at
- the top left of the Xcode window.
-
-6. Build lldb.xcodeproj.
-
diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/command_source/TestCommandSource.py b/lldb/packages/Python/lldbsuite/test/functionalities/command_source/TestCommandSource.py
index cee9bd27218..383f2d7cef0 100644
--- a/lldb/packages/Python/lldbsuite/test/functionalities/command_source/TestCommandSource.py
+++ b/lldb/packages/Python/lldbsuite/test/functionalities/command_source/TestCommandSource.py
@@ -1,7 +1,5 @@
"""
Test that lldb command "command source" works correctly.
-
-See also http://llvm.org/viewvc/llvm-project?view=rev&revision=109673.
"""
from __future__ import print_function
diff --git a/lldb/packages/Python/lldbsuite/test/lang/objc/objc-optimized/TestObjcOptimized.py b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-optimized/TestObjcOptimized.py
index 340d8849efa..c7e012db146 100644
--- a/lldb/packages/Python/lldbsuite/test/lang/objc/objc-optimized/TestObjcOptimized.py
+++ b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-optimized/TestObjcOptimized.py
@@ -1,7 +1,6 @@
"""
Test that objective-c expression parser continues to work for optimized build.
-http://llvm.org/viewvc/llvm-project?rev=126973&view=rev
Fixed a bug in the expression parser where the 'this'
or 'self' variable was not properly read if the compiler
optimized it into a register.
diff --git a/lldb/utils/vim-lldb/doc/lldb.txt b/lldb/utils/vim-lldb/doc/lldb.txt
index e54e6f2db0d..e7415d91d1d 100644
--- a/lldb/utils/vim-lldb/doc/lldb.txt
+++ b/lldb/utils/vim-lldb/doc/lldb.txt
@@ -107,7 +107,7 @@ On Mac OS X (under MacVim) , the following key mappings are available:
ABOUT *lldb-about*
Grab the latest version of this plugin (and LLDB sources) with:
- git clone http://llvm.org/git/lldb
+ git clone https://github.com/llvm/llvm-project.git
File any bugs at:
http://llvm.org/bugs/enter_bug.cgi?product=lldb
diff --git a/lldb/www/adding-language-support.html b/lldb/www/adding-language-support.html
index b2bd5c5d1e8..86041c8670b 100644
--- a/lldb/www/adding-language-support.html
+++ b/lldb/www/adding-language-support.html
@@ -56,7 +56,7 @@
<div class="postcontent">
<p>
The LanguageType enum
- (see <a href="http://llvm.org/svn/llvm-project/lldb/trunk/include/lldb/lldb-enumerations.h">lldb-enumerations.h</a>)
+ (see <a href="https://github.com/llvm/llvm-project/blob/master/lldb/include/lldb/lldb-enumerations.h">lldb-enumerations.h</a>)
contains a list of every language known to LLDB. It is
the one place where support for a language must live
that will need to merge cleanly with core LLDB if you
@@ -72,8 +72,8 @@
<h1 class="postheader">Add a TypeSystem for the Language</h1>
<div class="postcontent">
<p>
- Both <a href="http://llvm.org/svn/llvm-project/lldb/trunk/include/lldb/Core/Module.h">Module</a>
- and <a href="http://llvm.org/svn/llvm-project/lldb/trunk/include/lldb/Target/Target.h">Target</a>
+ Both <a href="https://github.com/llvm/llvm-project/blob/master/lldb/include/lldb/Core/Module.h">Module</a>
+ and <a href="https://github.com/llvm/llvm-project/blob/master/lldb/include/lldb/Target/Target.h">Target</a>
support the retrieval of a TypeSystem instance via
GetTypeSystemForLanguage(). For Module, this method is
directly on the Module instance. For Target, this is
@@ -116,7 +116,7 @@
Expression Evaluation support is enabled by implementing
the relevant methods on a TypeSystem-derived class.
Search for "Expression" in the
- <a href="http://llvm.org/svn/llvm-project/lldb/trunk/include/lldb/Symbol/TypeSystem.h">TypeSystem header</a>
+ <a href="https://github.com/llvm/llvm-project/blob/master/lldb/include/lldb/Symbol/TypeSystem.h">TypeSystem header</a>
to find relevant
methods to implement.
</p>
@@ -160,7 +160,7 @@
Your TypeSystem will need an approach for creating types
based on a set of Modules. If your type info is going
to come from DWARF info, you will want to subclass
- <a href="http://llvm.org/svn/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/DWARFASTParser.h">DWARFASTParser</a>.
+ <a href="https://github.com/llvm/llvm-project/blob/master/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.h">DWARFASTParser</a>.
</p>
</div>
<div class="postfooter"></div>
diff --git a/lldb/www/build.html b/lldb/www/build.html
index 381e17c4af1..2ab77d2b844 100755
--- a/lldb/www/build.html
+++ b/lldb/www/build.html
@@ -249,48 +249,11 @@
</code>
<h2>Building LLDB</h2>
<p>
- We first need to checkout the source trees into the appropriate locations. Both
- Clang and LLDB build as subprojects of LLVM. This means we will be checking out
- the source for both Clang and LLDB into the <tt>tools</tt> subdirectory of LLVM. We
- will be setting up a directory hierarchy looking something like this:
- </p>
- <p>
- <pre><tt>
- llvm
- |
- `-- tools
- |
- +-- clang
- |
- `-- lldb
- </tt></pre>
- </p>
- <p>
- For reference, we will call the root of the LLVM project tree <tt>$llvm</tt>, and the
- roots of the Clang and LLDB source trees <tt>$clang</tt> and <tt>$lldb</tt> respectively.
- </p>
- <p>Change to the directory where you want to do development work and checkout LLVM:</p>
- <code>&gt; svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm</code>
-
- <p>Now switch to LLVM&#8217;s tools subdirectory and checkout both Clang and LLDB:</p>
- <code>
- &gt; cd $llvm/tools
- <br />&gt; svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
- <br />&gt; svn co http://llvm.org/svn/llvm-project/lldb/trunk lldb
- </code>
-
- <p>
- In general, building the LLDB trunk revision requires trunk revisions of both
- LLVM and Clang.
- </p>
- <p>
- It is highly recommended that you build the system out of tree. Create a second
- build directory and configure the LLVM project tree to your specifications as
- outlined in LLVM&#8217;s <em>Getting Started Guide</em>. A typical build procedure
- might be:
- </p>
- <code>
- &gt; cd $llvm/..
+ LLDB requires both LLVM and Clang to build. We first need to checkout the source tree,
+ which contains all three. Change to the directory where you want to do development
+ work and clone the repository:</p>
+ <code>&gt; git clone https://github.com/llvm/llvm-project.git
+ <br />&gt; cd llvm-project
<br />&gt; mkdir build
<br />&gt; cd build
</code>
@@ -309,7 +272,7 @@
ninja on your system. To build using ninja:
</p>
<code>
- &gt; cmake ../llvm -G Ninja
+ &gt; cmake ../llvm -G Ninja -DLLVM_ENABLE_PROJECTS='clang;lldb'
<br />&gt; ninja lldb
<br />&gt; ninja check-lldb
</code>
@@ -318,7 +281,7 @@
two additional arguments to cmake before running ninja:
</p>
<code>
- &gt; cmake ../llvm -G Ninja -DLLDB_EXPORT_ALL_SYMBOLS=1 -DCMAKE_BUILD_TYPE=Debug
+ &gt; cmake ../llvm -G Ninja -DLLVM_ENABLE_PROJECTS='clang;lldb' -DLLDB_EXPORT_ALL_SYMBOLS=1 -DCMAKE_BUILD_TYPE=Debug
</code>
<h3>Using CMake + Unix Makefiles</h3>
<p>If you do not have Ninja, you can still use CMake to generate Unix Makefiles that build LLDB:</p>
diff --git a/lldb/www/index.html b/lldb/www/index.html
index bc8b01ae70a..13e1f1df4ef 100755
--- a/lldb/www/index.html
+++ b/lldb/www/index.html
@@ -110,7 +110,7 @@
<p>To check out the code, use:</p>
<ul>
- <li>svn co http://llvm.org/svn/llvm-project/lldb/trunk lldb</li>
+ <li>git clone https://github.com/llvm/llvm-project.git</li>
</ul>
<p>Note that LLDB generally builds from top-of-trunk</p>
diff --git a/lldb/www/python-reference.html b/lldb/www/python-reference.html
index bde728f9a4c..12183a7d3c2 100755
--- a/lldb/www/python-reference.html
+++ b/lldb/www/python-reference.html
@@ -515,11 +515,11 @@ Enter your Python command(s). Type 'DONE' to end.
its operations. </p>
<p>There is a longer discussion of scripted thread plans and the state machine, and several interesting examples
of their use in:</p>
- <a href="http://llvm.org/svn/llvm-project/lldb/trunk/examples/python/scripted_step.py">scripted_step.py</a>
+ <a href="https://github.com/llvm/llvm-project/blob/master/lldb/examples/python/scripted_step.py">scripted_step.py</a>
<p> And for a MUCH fuller discussion of the whole state machine, see:</p>
- <a href="http://llvm.org/svn/llvm-project/lldb/trunk/include/lldb/Target/ThreadPlan.h">ThreadPlan.h</a>
+ <a href="https://github.com/llvm/llvm-project/blob/master/lldb/include/lldb/Target/ThreadPlan.h">ThreadPlan.h</a>
<p>If you are reading those comments it is useful to know that scripted thread plans are set to be
"MasterPlans", and not "OkayToDiscard".
@@ -795,7 +795,7 @@ total 365848
</tt></pre></code>
<p>A more interesting template has been created in the source repository that can help you to create
lldb command quickly:</p>
- <a href="http://llvm.org/svn/llvm-project/lldb/trunk/examples/python/cmdtemplate.py">cmdtemplate.py</a>
+ <a href="https://github.com/llvm/llvm-project/blob/master/lldb/examples/python/cmdtemplate.py">cmdtemplate.py</a>
<p>
A commonly required facility is being able to create a command that does some token substitution, and then runs a different debugger command
(usually, it po'es the result of an expression evaluated on its argument). For instance, given the following program:
diff --git a/lldb/www/scripting.html b/lldb/www/scripting.html
index 10ba05b6a10..bd17134c125 100755
--- a/lldb/www/scripting.html
+++ b/lldb/www/scripting.html
@@ -160,7 +160,7 @@
objects are used, among other things, to wrap up program variables and values.
There are many useful methods defined in the SBValue class to allow you to get
information or children values out of SBValues. For complete information, see
- the header file <a href="http://llvm.org/svn/llvm-project/lldb/trunk/include/lldb/API/SBValue.h">SBValue.h</a>. The
+ the header file <a href="https://github.com/llvm/llvm-project/blob/master/lldb/include/lldb/API/SBValue.h">SBValue.h</a>. The
SBValue methods that we use in our DFS function are
<code>GetChildMemberWithName()</code>,
<code>GetSummary()</code>, and <code>GetValue()</code>.</p>
@@ -573,8 +573,8 @@ Process 696 stopped
the DFS function and other Python script examples (tree_utils.py) used for this
example are available via following file links:</p>
-<a href="http://llvm.org/svn/llvm-project/lldb/trunk/examples/scripting/tree_utils.py">tree_utils.py</a> - Example Python functions using LLDB's API, including DFS<br>
-<a href="http://llvm.org/svn/llvm-project/lldb/trunk/examples/scripting/dictionary.c">dictionary.c</a> - Sample dictionary program, with bug<br>
+<a href="https://github.com/llvm/llvm-project/blob/master/lldb/examples/scripting/tree_utils.py">tree_utils.py</a> - Example Python functions using LLDB's API, including DFS<br>
+<a href="https://github.com/llvm/llvm-project/blob/master/lldb/examples/scripting/dictionary.c">dictionary.c</a> - Sample dictionary program, with bug<br>
<p>The text for "Romeo and Juliet" can be obtained from the Gutenberg Project
(http://www.gutenberg.org).</p>
diff --git a/lldb/www/sidebar.incl b/lldb/www/sidebar.incl
index 8c5cca37365..34cc850d9fd 100644
--- a/lldb/www/sidebar.incl
+++ b/lldb/www/sidebar.incl
@@ -50,8 +50,7 @@
<li><a href="/test.html">Test</a></li>
<li><a href="/SB-api-coding-rules.html">SB API Coding Rules</a></li>
<li><a href="http://bugs.llvm.org">Bug Reports</a></li>
- <li><a href="http://llvm.org/svn/llvm-project/lldb/trunk">Browse SVN</a></li>
- <li><a href="http://llvm.org/viewvc/llvm-project/lldb/trunk">Browse ViewVC</a></li>
+ <li><a href="https://github.com/llvm/llvm-project/tree/master/lldb/">Browse Sources</a></li>
</ul>
</div>
</div>
diff --git a/lldb/www/source.html b/lldb/www/source.html
index e8a19fcfe85..631864af40e 100755
--- a/lldb/www/source.html
+++ b/lldb/www/source.html
@@ -22,23 +22,9 @@
<div class="postcontent">
<p>Refer to the <a href="http://llvm.org/docs/GettingStarted.html#getting-started-with-llvm">LLVM Getting Started Guide</a>
for general instructions on how to check out source. Note that LLDB depends on having a working checkout of LLVM
- and Clang, so the first step is to download LLVM and Clang sources as described at the above URL. Then you can
- additionally download the LLDB sources from the following repository URLs.</p>
- <p><b>SVN Repository</b>: http://llvm.org/svn/llvm-project/lldb/trunk </p>
- <p><b>Git Clone</b>: http://llvm.org/git/lldb.git </p>
- <p>
- For non-Mac platforms, and for MacOSX building with CMake (not Xcode), you should check out your sources to adhere to
- the following directory structure:
- <pre><tt>
- llvm
- |
- `-- tools
- |
- +-- clang
- |
- `-- lldb
- </tt></pre>
- </p>
+ and Clang, so the first step is to download and build as described at the above URL. The same repository also
+ contains LLDB.</p>
+ <p><b>Git browser</b>: https://github.com/llvm/llvm-project/tree/master/lldb </p>
<p>
For MacOSX building from Xcode, simply checkout LLDB and then build from Xcode. The Xcode project will
automatically detect that it is a fresh checkout, and checkout LLVM and clang automatically. Unlike other
diff --git a/lldb/www/symbolication.html b/lldb/www/symbolication.html
index 7ff2ddaced8..d454ebcef83 100755
--- a/lldb/www/symbolication.html
+++ b/lldb/www/symbolication.html
@@ -352,8 +352,8 @@ Options:
</tt></pre></code>
<p>The source for the "symbolication" and "crashlog" modules are available in SVN:</p>
<ul>
- <li><a href="http://llvm.org/svn/llvm-project/lldb/trunk/examples/python/symbolication.py">symbolication.py</a></li>
- <li><a href="http://llvm.org/svn/llvm-project/lldb/trunk/examples/python/crashlog.py">crashlog.py</a></li>
+ <li><a href="https://github.com/llvm/llvm-project/blob/master/lldb/examples/python/symbolication.py">symbolication.py</a></li>
+ <li><a href="https://github.com/llvm/llvm-project/blob/master/lldb/examples/python/crashlog.py">crashlog.py</a></li>
</ul>
</div>
<div class="postfooter"></div>
diff --git a/lldb/www/varformats.html b/lldb/www/varformats.html
index c4c1d8efb56..bf562420890 100755
--- a/lldb/www/varformats.html
+++ b/lldb/www/varformats.html
@@ -870,13 +870,13 @@ def function (valobj,internal_dict):<br/>
<p><code>internal_dict</code> is an internal support parameter used by LLDB and you should
not touch it.<br/><code>valobj</code> is the object encapsulating the actual
- variable being displayed, and its type is <a href="http://llvm.org/svn/llvm-project/lldb/trunk/include/lldb/API/SBValue.h">SBValue</a>.
+ variable being displayed, and its type is <a href="https://github.com/llvm/llvm-project/blob/master/lldb/include/lldb/API/SBValue.h">SBValue</a>.
Out of the many possible operations on an SBValue, the basic one is retrieve the children objects
it contains (essentially, the fields of the object wrapped by it), by calling
<code>GetChildMemberWithName()</code>, passing it the child's name as a string.<br/>
If the variable has a value, you can ask for it, and return it as a string using <code>GetValue()</code>,
or as a signed/unsigned number using <code>GetValueAsSigned()</code>, <code>GetValueAsUnsigned()</code>.
- It is also possible to retrieve an <a href="http://llvm.org/svn/llvm-project/lldb/trunk/include/lldb/API/SBData.h"><code>SBData</code></a> object by calling <code>GetData()</code> and then read
+ It is also possible to retrieve an <a href="https://github.com/llvm/llvm-project/blob/master/lldb/include/lldb/API/SBData.h"><code>SBData</code></a> object by calling <code>GetData()</code> and then read
the object's contents out of the <code>SBData</code>.
<p>If you need to delve into several levels of hierarchy, as you can do with summary
@@ -957,7 +957,7 @@ def function (valobj,internal_dict):<br/>
matching. </p>
<p>One of the ways LLDB uses this feature internally, is to match
the names of STL container classes, regardless of the template
- arguments provided. The details for this are found at <a href="http://llvm.org/svn/llvm-project/lldb/trunk/source/DataFormatters/FormatManager.cpp">FormatManager.cpp</a></p>
+ arguments provided. The details for this are found at <a href="https://github.com/llvm/llvm-project/blob/master/lldb/source/DataFormatters/FormatManager.cpp">FormatManager.cpp</a></p>
<p>The regular expression language used by LLDB is the <a href="http://en.wikipedia.org/wiki/Regular_expression#POSIX_Extended_Regular_Expressions">POSIX extended language</a>, as defined by the <a href="http://pubs.opengroup.org/onlinepubs/7908799/xsh/regex.h.html">Single UNIX Specification</a>, of which Mac OS X is a
compliant implementation.
@@ -1069,9 +1069,9 @@ def function (valobj,internal_dict):<br/>
<br/>
<sup>[3]</sup> This method is optional (starting with SVN revision 219330). The SBValue you return here will most likely be a numeric type (int, float, ...) as its value bytes will be used as-if they were the value of the root SBValue proper. As a shortcut for this, you can inherit from lldb.SBSyntheticValueProvider, and just define get_value as other methods are defaulted in the superclass as returning default no-children responses.
<p>If a synthetic child provider supplies a special child named <code>$$dereference$$</code> then it will be used when evaluating <code>opertaor*</code> and <code>operator-&gt;</code> in the <code>frame variable</code> command and related SB API functions.</p>
- <p>For examples of how synthetic children are created, you are encouraged to look at <a href="http://llvm.org/svn/llvm-project/lldb/trunk/examples/synthetic/">examples/synthetic</a> in the LLDB trunk. Please, be aware that the code in those files (except bitfield/)
+ <p>For examples of how synthetic children are created, you are encouraged to look at <a href="https://github.com/llvm/llvm-project/blob/master/lldb/examples/synthetic/">examples/synthetic</a> in the LLDB sources. Please, be aware that the code in those files (except bitfield/)
is legacy code and is not maintained.
- You may especially want to begin looking at <a href="http://llvm.org/svn/llvm-project/lldb/trunk/examples/synthetic/bitfield">this example</a> to get
+ You may especially want to begin looking at <a href="https://github.com/llvm/llvm-project/blob/master/lldb/examples/synthetic/bitfield/">this example</a> to get
a feel for this feature, as it is a very easy and well commented example.</p>
The design pattern consistently used in synthetic providers shipping with LLDB
is to use the <code>__init__</code> to store the SBValue instance as a part of <code>self</code>. The <code>update</code> function is then used
@@ -1206,7 +1206,7 @@ By default, LLDB will not show you the real type of the object. it can actually
Because LLDB uses a detection algorithm that does not need to invoke any functions
on the target process, <code>no-run-target</code> is enough for this to work.</p>
As a side note, the summary for NSString shown in the example is built right into LLDB.
- It was initially implemented through Python (the code is still available for reference at <a href="http://llvm.org/svn/llvm-project/lldb/trunk/examples/summaries/cocoa/CFString.py">CFString.py</a>).
+ It was initially implemented through Python (the code is still available for reference at <a href="https://github.com/llvm/llvm-project/blob/master/lldb/examples/summaries/cocoa/CFString.py">CFString.py</a>).
However, this is out of sync with the current implementation of the NSString formatter (which is a C++ function compiled into the LLDB core).
</p>
</div>
@@ -1281,9 +1281,7 @@ By default, LLDB will not show you the real type of the object. it can actually
<div class="post">
<h1 class="postheader">Finding formatters 101</h1>
<div class="postcontent">
- <p>Searching for a formatter
- (including formats, starting in SVN rev <a href="http://llvm.org/viewvc/llvm-project?view=revision&amp;revision=192217">r192217</a>)
- given a variable goes through
+ <p>Searching for a formatter given a variable goes through
a rather intricate set of rules. Namely, what happens is that LLDB
starts looking in each enabled category, according to the order in which
they were enabled (latest enabled first). In each category, LLDB does
OpenPOWER on IntegriCloud