mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-11-24 08:18:33 +00:00
Documentation: fix HTML validation errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78196 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -462,23 +462,23 @@ emitted as their code, followed by the extra data.
|
|||||||
<p>The possible operand encodings are:</p>
|
<p>The possible operand encodings are:</p>
|
||||||
|
|
||||||
<ol>
|
<ol>
|
||||||
<li value="1">Fixed: The field should be emitted as
|
<li>Fixed: The field should be emitted as
|
||||||
a <a href="#fixedwidth">fixed-width value</a>, whose width is specified by
|
a <a href="#fixedwidth">fixed-width value</a>, whose width is specified by
|
||||||
the operand's extra data.</li>
|
the operand's extra data.</li>
|
||||||
<li value="2">VBR: The field should be emitted as
|
<li>VBR: The field should be emitted as
|
||||||
a <a href="#variablewidth">variable-width value</a>, whose width is
|
a <a href="#variablewidth">variable-width value</a>, whose width is
|
||||||
specified by the operand's extra data.</li>
|
specified by the operand's extra data.</li>
|
||||||
<li value="3">Array: This field is an array of values. The array operand
|
<li>Array: This field is an array of values. The array operand
|
||||||
has no extra data, but expects another operand to follow it which indicates
|
has no extra data, but expects another operand to follow it which indicates
|
||||||
the element type of the array. When reading an array in an abbreviated
|
the element type of the array. When reading an array in an abbreviated
|
||||||
record, the first integer is a vbr6 that indicates the array length,
|
record, the first integer is a vbr6 that indicates the array length,
|
||||||
followed by the encoded elements of the array. An array may only occur as
|
followed by the encoded elements of the array. An array may only occur as
|
||||||
the last operand of an abbreviation (except for the one final operand that
|
the last operand of an abbreviation (except for the one final operand that
|
||||||
gives the array's type).</li>
|
gives the array's type).</li>
|
||||||
<li value="4">Char6: This field should be emitted as
|
<li>Char6: This field should be emitted as
|
||||||
a <a href="#char6">char6-encoded value</a>. This operand type takes no
|
a <a href="#char6">char6-encoded value</a>. This operand type takes no
|
||||||
extra data.</li>
|
extra data.</li>
|
||||||
<li value="5">Blob: This field is emitted as a vbr6, followed by padding to a
|
<li>Blob: This field is emitted as a vbr6, followed by padding to a
|
||||||
32-bit boundary (for alignment) and an array of 8-bit objects. The array of
|
32-bit boundary (for alignment) and an array of 8-bit objects. The array of
|
||||||
bytes is further followed by tail padding to ensure that its total length is
|
bytes is further followed by tail padding to ensure that its total length is
|
||||||
a multiple of 4 bytes. This makes it very efficient for the reader to
|
a multiple of 4 bytes. This makes it very efficient for the reader to
|
||||||
|
|||||||
@@ -67,7 +67,7 @@
|
|||||||
|
|
||||||
<ol>
|
<ol>
|
||||||
|
|
||||||
<li><p><a href=http://www.cmake.org/cmake/resources/software.html>Download</a>
|
<li><p><a href="http://www.cmake.org/cmake/resources/software.html">Download</a>
|
||||||
and install CMake. Version 2.6.2 is the minimum required.</p>
|
and install CMake. Version 2.6.2 is the minimum required.</p>
|
||||||
|
|
||||||
<li><p>Open a shell. Your development tools must be reachable from this
|
<li><p>Open a shell. Your development tools must be reachable from this
|
||||||
@@ -180,7 +180,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p>Variables are stored on the CMake cache. This is a file
|
<p>Variables are stored on the CMake cache. This is a file
|
||||||
named <it>CMakeCache.txt</it> on the root of the build
|
named <tt>CMakeCache.txt</tt> on the root of the build
|
||||||
directory. Do not hand-edit it.</p>
|
directory. Do not hand-edit it.</p>
|
||||||
|
|
||||||
<p>Variables are listed here appending its type after a colon. It is
|
<p>Variables are listed here appending its type after a colon. It is
|
||||||
|
|||||||
@@ -1441,9 +1441,9 @@ string "<tt>-pos1 -foo -bar baz -pos2 -bork</tt>" would cause the "<tt>-foo -bar
|
|||||||
|
|
||||||
<li><a name="cl::Sink">The <b><tt>cl::Sink</tt></b></a> modifier is
|
<li><a name="cl::Sink">The <b><tt>cl::Sink</tt></b></a> modifier is
|
||||||
used to handle unknown options. If there is at least one option with
|
used to handle unknown options. If there is at least one option with
|
||||||
<b><tt>cl::Sink</tt></b></a> modifier specified, the parser passes
|
<tt>cl::Sink</tt> modifier specified, the parser passes
|
||||||
unrecognized option strings to it as values instead of signaling an
|
unrecognized option strings to it as values instead of signaling an
|
||||||
error. As with <b><tt>cl::CommaSeparated</tt></b></a>, this modifier
|
error. As with <tt>cl::CommaSeparated</tt>, this modifier
|
||||||
only makes sense with a <a href="#cl::list">cl::list</a> option.</li>
|
only makes sense with a <a href="#cl::list">cl::list</a> option.</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|||||||
@@ -426,6 +426,8 @@ destination address for a <a href="#llvm_eh_sjlj_longjmp"><tt>
|
|||||||
llvm.eh.sjlj.longjmp</tt></a> in the second word. The following three words
|
llvm.eh.sjlj.longjmp</tt></a> in the second word. The following three words
|
||||||
are available for use in a target-specific manner.</p>
|
are available for use in a target-specific manner.</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- ======================================================================= -->
|
<!-- ======================================================================= -->
|
||||||
<div class="doc_section">
|
<div class="doc_section">
|
||||||
<a name="asm">Asm Table Formats</a>
|
<a name="asm">Asm Table Formats</a>
|
||||||
|
|||||||
@@ -334,11 +334,11 @@ void visitGCRoots(void (*Visitor)(void **Root, const void *Meta)) {
|
|||||||
|
|
||||||
// For roots [0, NumMeta), the metadata pointer is in the FrameMap.
|
// For roots [0, NumMeta), the metadata pointer is in the FrameMap.
|
||||||
for (unsigned e = R->Map->NumMeta; i != e; ++i)
|
for (unsigned e = R->Map->NumMeta; i != e; ++i)
|
||||||
Visitor(&R->Roots[i], R->Map->Meta[i]);
|
Visitor(&R->Roots[i], R->Map->Meta[i]);
|
||||||
|
|
||||||
// For roots [NumMeta, NumRoots), the metadata pointer is null.
|
// For roots [NumMeta, NumRoots), the metadata pointer is null.
|
||||||
for (unsigned e = R->Map->NumRoots; i != e; ++i)
|
for (unsigned e = R->Map->NumRoots; i != e; ++i)
|
||||||
Visitor(&R->Roots[i], NULL);
|
Visitor(&R->Roots[i], NULL);
|
||||||
}
|
}
|
||||||
}</pre></div>
|
}</pre></div>
|
||||||
|
|
||||||
@@ -398,7 +398,7 @@ program.</p>
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="doc_code"><tt>
|
<div class="doc_code"><tt>
|
||||||
define <i>ty</i> @<i>name</i>(...) <u>gc "<i>name</i>"</u> { ...
|
define <i>ty</i> @<i>name</i>(...) <span style="text-decoration: underline">gc "<i>name</i>"</span> { ...
|
||||||
</tt></div>
|
</tt></div>
|
||||||
|
|
||||||
<div class="doc_text">
|
<div class="doc_text">
|
||||||
|
|||||||
@@ -140,15 +140,15 @@
|
|||||||
<li>If you used CMake, then the directory you created the project files,
|
<li>If you used CMake, then the directory you created the project files,
|
||||||
the root directory will have an <tt>llvm.sln</tt> file, just
|
the root directory will have an <tt>llvm.sln</tt> file, just
|
||||||
double-click on that to open Visual Studio.</li>
|
double-click on that to open Visual Studio.</li>
|
||||||
</ol></li>
|
</ul></li>
|
||||||
|
|
||||||
<li>Build the LLVM Suite:
|
<li>Build the LLVM Suite:
|
||||||
<ol>
|
<ul>
|
||||||
<li>Simply build the solution.</li>
|
<li>Simply build the solution.</li>
|
||||||
<li>The Fibonacci project is a sample program that uses the JIT. Modify
|
<li>The Fibonacci project is a sample program that uses the JIT. Modify
|
||||||
the project's debugging properties to provide a numeric command line
|
the project's debugging properties to provide a numeric command line
|
||||||
argument. The program will print the corresponding fibonacci value.</li>
|
argument. The program will print the corresponding fibonacci value.</li>
|
||||||
</ol></li>
|
</ul></li>
|
||||||
|
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
|
|||||||
@@ -138,7 +138,6 @@ svn co https://llvm.org/svn/llvm-project/test-suite/branches/release_<i>XX</i>
|
|||||||
</pre>
|
</pre>
|
||||||
</div></li>
|
</div></li>
|
||||||
|
|
||||||
</div>
|
|
||||||
</ol>
|
</ol>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -30,11 +30,12 @@
|
|||||||
<li><a href="#isa">The <tt>isa<></tt>, <tt>cast<></tt>
|
<li><a href="#isa">The <tt>isa<></tt>, <tt>cast<></tt>
|
||||||
and <tt>dyn_cast<></tt> templates</a> </li>
|
and <tt>dyn_cast<></tt> templates</a> </li>
|
||||||
<li><a href="#string_apis">Passing strings (the <tt>StringRef</tt>
|
<li><a href="#string_apis">Passing strings (the <tt>StringRef</tt>
|
||||||
and <tt>Twine</tt> classes)</li>
|
and <tt>Twine</tt> classes)</a>
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="#StringRef">The <tt>StringRef</tt> class</a> </li>
|
<li><a href="#StringRef">The <tt>StringRef</tt> class</a> </li>
|
||||||
<li><a href="#Twine">The <tt>Twine</tt> class</a> </li>
|
<li><a href="#Twine">The <tt>Twine</tt> class</a> </li>
|
||||||
</ul>
|
</ul>
|
||||||
|
</li>
|
||||||
<li><a href="#DEBUG">The <tt>DEBUG()</tt> macro and <tt>-debug</tt>
|
<li><a href="#DEBUG">The <tt>DEBUG()</tt> macro and <tt>-debug</tt>
|
||||||
option</a>
|
option</a>
|
||||||
<ul>
|
<ul>
|
||||||
@@ -86,9 +87,9 @@ option</a></li>
|
|||||||
<li><a href="#dss_othermap">Other Map-Like Container Options</a></li>
|
<li><a href="#dss_othermap">Other Map-Like Container Options</a></li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li><a href="#ds_string">String-like containers</a>
|
<li><a href="#ds_string">String-like containers</a>
|
||||||
<ul>
|
<!--<ul>
|
||||||
<!-- todo -->
|
todo
|
||||||
</ul></li>
|
</ul>--></li>
|
||||||
<li><a href="#ds_bit">BitVector-like containers</a>
|
<li><a href="#ds_bit">BitVector-like containers</a>
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="#dss_bitvector">A dense bitvector</a></li>
|
<li><a href="#dss_bitvector">A dense bitvector</a></li>
|
||||||
@@ -525,7 +526,7 @@ it can be efficiently rendered directly into a character array. This avoids
|
|||||||
unnecessary heap allocation involved in constructing the temporary results of
|
unnecessary heap allocation involved in constructing the temporary results of
|
||||||
string concatenation. See
|
string concatenation. See
|
||||||
"<tt><a href="/doxygen/classllvm_1_1Twine_8h-source.html">llvm/ADT/Twine.h</a></tt>"
|
"<tt><a href="/doxygen/classllvm_1_1Twine_8h-source.html">llvm/ADT/Twine.h</a></tt>"
|
||||||
for more information.</p></tt>
|
for more information.</p>
|
||||||
|
|
||||||
<p>As with a <tt>StringRef</tt>, <tt>Twine</tt> objects point to external memory
|
<p>As with a <tt>StringRef</tt>, <tt>Twine</tt> objects point to external memory
|
||||||
and should almost never be stored or mentioned directly. They are intended
|
and should almost never be stored or mentioned directly. They are intended
|
||||||
|
|||||||
@@ -486,7 +486,7 @@ clients should be unaffected by this transition, unless they are used to <tt>Val
|
|||||||
could move to a <tt>Twine</tt> based design.</li>
|
could move to a <tt>Twine</tt> based design.</li>
|
||||||
|
|
||||||
<li><tt>isName()</tt> should be replaced with comparison
|
<li><tt>isName()</tt> should be replaced with comparison
|
||||||
against <tt>getName()</tt> (this is now efficient).</tt>
|
against <tt>getName()</tt> (this is now efficient).
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
|||||||
@@ -371,8 +371,8 @@ supported include:</p>
|
|||||||
<dd>string value</dd>
|
<dd>string value</dd>
|
||||||
<dt><tt>[{ ... }]</tt></dt>
|
<dt><tt>[{ ... }]</tt></dt>
|
||||||
<dd>code fragment</dd>
|
<dd>code fragment</dd>
|
||||||
<dt><tt>[ X, Y, Z ]<type></tt></dt>
|
<dt><tt>[ X, Y, Z ]<type></tt></dt>
|
||||||
<dd>list value. <type> is the type of the list
|
<dd>list value. <type> is the type of the list
|
||||||
element and is usually optional. In rare cases,
|
element and is usually optional. In rare cases,
|
||||||
TableGen is unable to deduce the element type in
|
TableGen is unable to deduce the element type in
|
||||||
which case the user must specify it explicitly.</dd>
|
which case the user must specify it explicitly.</dd>
|
||||||
@@ -408,13 +408,13 @@ which case the user must specify it explicitly.</dd>
|
|||||||
<dt><tt>!strconcat(a, b)</tt></dt>
|
<dt><tt>!strconcat(a, b)</tt></dt>
|
||||||
<dd>A string value that is the result of concatenating the 'a' and 'b'
|
<dd>A string value that is the result of concatenating the 'a' and 'b'
|
||||||
strings.</dd>
|
strings.</dd>
|
||||||
<dt><tt>!cast<type>(a)</tt></dt>
|
<dt><tt>!cast<type>(a)</tt></dt>
|
||||||
<dd>A symbol of type <em>type</em> obtained by looking up the string 'a' in
|
<dd>A symbol of type <em>type</em> obtained by looking up the string 'a' in
|
||||||
the symbol table. If the type of 'a' does not match <em>type</em>, TableGen
|
the symbol table. If the type of 'a' does not match <em>type</em>, TableGen
|
||||||
aborts with an error. !cast<string> is a special case in that the argument must
|
aborts with an error. !cast<string> is a special case in that the argument must
|
||||||
be an object defined by a 'def' construct.</dd>
|
be an object defined by a 'def' construct.</dd>
|
||||||
<dt><tt>!nameconcat<type>(a, b)</tt></dt>
|
<dt><tt>!nameconcat<type>(a, b)</tt></dt>
|
||||||
<dd>Shorthand for !cast<type>(!strconcat(a, b))</dd>
|
<dd>Shorthand for !cast<type>(!strconcat(a, b))</dd>
|
||||||
<dt><tt>!subst(a, b, c)</tt></dt>
|
<dt><tt>!subst(a, b, c)</tt></dt>
|
||||||
<dd>If 'a' and 'b' are of string type or are symbol references, substitute
|
<dd>If 'a' and 'b' are of string type or are symbol references, substitute
|
||||||
'b' for 'a' in 'c.' This operation is analogous to $(subst) in GNU make.</dd>
|
'b' for 'a' in 'c.' This operation is analogous to $(subst) in GNU make.</dd>
|
||||||
|
|||||||
@@ -451,7 +451,7 @@ the <tt>RegisterTarget</tt> template to register the target. For example, the Sp
|
|||||||
Target llvm::TheSparcTarget;
|
Target llvm::TheSparcTarget;
|
||||||
|
|
||||||
extern "C" void LLVMInitializeSparcTargetInfo() {
|
extern "C" void LLVMInitializeSparcTargetInfo() {
|
||||||
RegisterTarget<Triple::sparc, /*HasJIT=*/false>
|
RegisterTarget<Triple::sparc, /*HasJIT=*/false>
|
||||||
X(TheSparcTarget, "sparc", "Sparc");
|
X(TheSparcTarget, "sparc", "Sparc");
|
||||||
}
|
}
|
||||||
</pre>
|
</pre>
|
||||||
@@ -469,7 +469,7 @@ example. Here is an example of registering the Sparc assembly printer:
|
|||||||
<div class="doc_code">
|
<div class="doc_code">
|
||||||
<pre>
|
<pre>
|
||||||
extern "C" void LLVMInitializeSparcAsmPrinter() {
|
extern "C" void LLVMInitializeSparcAsmPrinter() {
|
||||||
RegisterAsmPrinter<SparcAsmPrinter> X(TheSparcTarget);
|
RegisterAsmPrinter<SparcAsmPrinter> X(TheSparcTarget);
|
||||||
}
|
}
|
||||||
</pre>
|
</pre>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -288,8 +288,8 @@ into "t.ll" and run "<tt>llvm-as < t.ll | opt -analyze -view-cfg</tt>", <a
|
|||||||
href="../ProgrammersManual.html#ViewGraph">a window will pop up</a> and you'll
|
href="../ProgrammersManual.html#ViewGraph">a window will pop up</a> and you'll
|
||||||
see this graph:</p>
|
see this graph:</p>
|
||||||
|
|
||||||
<center><img src="LangImpl5-cfg.png" alt="Example CFG" width="423"
|
<div style="text-align: center"><img src="LangImpl5-cfg.png" alt="Example CFG" width="423"
|
||||||
height="315"></center>
|
height="315"></div>
|
||||||
|
|
||||||
<p>Another way to get this is to call "<tt>F->viewCFG()</tt>" or
|
<p>Another way to get this is to call "<tt>F->viewCFG()</tt>" or
|
||||||
"<tt>F->viewCFGOnly()</tt>" (where F is a "<tt>Function*</tt>") either by
|
"<tt>F->viewCFGOnly()</tt>" (where F is a "<tt>Function*</tt>") either by
|
||||||
|
|||||||
@@ -271,8 +271,8 @@ into "t.ll" and run "<tt>llvm-as < t.ll | opt -analyze -view-cfg</tt>", <a
|
|||||||
href="../ProgrammersManual.html#ViewGraph">a window will pop up</a> and you'll
|
href="../ProgrammersManual.html#ViewGraph">a window will pop up</a> and you'll
|
||||||
see this graph:</p>
|
see this graph:</p>
|
||||||
|
|
||||||
<center><img src="LangImpl5-cfg.png" alt="Example CFG" width="423"
|
<div style="text-align: center"><img src="LangImpl5-cfg.png" alt="Example CFG" width="423"
|
||||||
height="315"></center>
|
height="315"></div>
|
||||||
|
|
||||||
<p>Another way to get this is to call "<tt>Llvm_analysis.view_function_cfg
|
<p>Another way to get this is to call "<tt>Llvm_analysis.view_function_cfg
|
||||||
f</tt>" or "<tt>Llvm_analysis.view_function_cfg_only f</tt>" (where <tt>f</tt>
|
f</tt>" or "<tt>Llvm_analysis.view_function_cfg_only f</tt>" (where <tt>f</tt>
|
||||||
|
|||||||
Reference in New Issue
Block a user