Minor format tweask for tables.

llvm-svn: 17394
This commit is contained in:
Reid Spencer 2004-11-01 08:19:36 +00:00
parent ad44f5c0be
commit c3c4c4f843
7 changed files with 142 additions and 188 deletions

View File

@ -556,7 +556,7 @@ optimization.</p>
<td><b>optimizer.output</b></td>
<td><tt>bytecode</tt> or <tt>assembly</tt></td>
<td class="td_left">This item specifies the kind of output the language's
optimizer generates. Valid values are "assembly" and "bytecode"<td>
optimizer generates. Valid values are "assembly" and "bytecode"</td>
<td><tt>bytecode</tt></td>
</tr>
<tr>

View File

@ -581,12 +581,8 @@ LLVM.</p>
<p>The following environment variables are used by the <tt>configure</tt>
script to configure the build system:</p>
<table border=1>
<tr>
<th>Variable</th>
<th>Purpose</th>
</tr>
<table>
<tr><th>Variable</th><th>Purpose</th></tr>
<tr>
<td>CC</td>
<td>Tells <tt>configure</tt> which C compiler to use. By default,
@ -594,7 +590,6 @@ script to configure the build system:</p>
<tt>PATH</tt>. Use this variable to override
<tt>configure</tt>'s default behavior.</td>
</tr>
<tr>
<td>CXX</td>
<td>Tells <tt>configure</tt> which C++ compiler to use. By default,

View File

@ -11,10 +11,9 @@
How to submit an LLVM bug report
</div>
<table border="0" width="100%">
<tr>
<td valign="top">
<table class="layout" style="width: 90%" >
<tr class="layout">
<td class="left">
<ol>
<li><a href="#introduction">Introduction - Got bugs?</a></li>
<li><a href="#crashers">Crashing Bugs</a>
@ -26,20 +25,17 @@
</ul></li>
<li><a href="#miscompilations">Miscompilations</a></li>
<li><a href="#codegen">Incorrect code generation (JIT and LLC)</a></li>
</ol>
<div class="doc_author">
<p>Written by <a href="mailto:sabre@nondot.org">Chris Lattner</a> and
<a href="http://misha.brukman.net">Misha Brukman</a></p>
</div>
</td>
<td align="right">
<td class="right">
<img src="img/Debugging.gif" alt="Debugging" width="444" height="314">
</td>
</tr>
</table>
</div>
<!-- *********************************************************************** -->
<div class="doc_section">

View File

@ -299,78 +299,39 @@ href="#rw_stroustrup">1</a></sup>.<p> --> </div>
<p>The primitive types are the fundamental building blocks of the LLVM
system. The current set of primitive types are as follows:</p>
<table border="0" style="align: center">
<tbody>
<tr>
<td>
<table border="1" cellspacing="0" cellpadding="4" style="align: center">
<table class="layout">
<tr class="layout">
<td class="left">
<table>
<tbody>
<tr>
<td><tt>void</tt></td>
<td>No value</td>
</tr>
<tr>
<td><tt>ubyte</tt></td>
<td>Unsigned 8 bit value</td>
</tr>
<tr>
<td><tt>ushort</tt></td>
<td>Unsigned 16 bit value</td>
</tr>
<tr>
<td><tt>uint</tt></td>
<td>Unsigned 32 bit value</td>
</tr>
<tr>
<td><tt>ulong</tt></td>
<td>Unsigned 64 bit value</td>
</tr>
<tr>
<td><tt>float</tt></td>
<td>32 bit floating point value</td>
</tr>
<tr>
<td><tt>label</tt></td>
<td>Branch destination</td>
</tr>
<tr><th>Type</th><th>Description</th></tr>
<tr><td><tt>void</tt></td><td>No value</td></tr>
<tr><td><tt>ubyte</tt></td><td>Unsigned 8 bit value</td></tr>
<tr><td><tt>ushort</tt></td><td>Unsigned 16 bit value</td></tr>
<tr><td><tt>uint</tt></td><td>Unsigned 32 bit value</td></tr>
<tr><td><tt>ulong</tt></td><td>Unsigned 64 bit value</td></tr>
<tr><td><tt>float</tt></td><td>32 bit floating point value</td></tr>
<tr><td><tt>label</tt></td><td>Branch destination</td></tr>
</tbody>
</table>
</td>
<td valign="top">
<table border="1" cellspacing="0" cellpadding="4">
</td>
<td class="right">
<table>
<tbody>
<tr>
<td><tt>bool</tt></td>
<td>True or False value</td>
</tr>
<tr>
<td><tt>sbyte</tt></td>
<td>Signed 8 bit value</td>
</tr>
<tr>
<td><tt>short</tt></td>
<td>Signed 16 bit value</td>
</tr>
<tr>
<td><tt>int</tt></td>
<td>Signed 32 bit value</td>
</tr>
<tr>
<td><tt>long</tt></td>
<td>Signed 64 bit value</td>
</tr>
<tr>
<td><tt>double</tt></td>
<td>64 bit floating point value</td>
</tr>
<tr><th>Type</th><th>Description</th></tr>
<tr><td><tt>bool</tt></td><td>True or False value</td></tr>
<tr><td><tt>sbyte</tt></td><td>Signed 8 bit value</td></tr>
<tr><td><tt>short</tt></td><td>Signed 16 bit value</td></tr>
<tr><td><tt>int</tt></td><td>Signed 32 bit value</td></tr>
<tr><td><tt>long</tt></td><td>Signed 64 bit value</td></tr>
<tr><td><tt>double</tt></td><td>64 bit floating point value</td></tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</td>
</tr>
</table>
</div>
<!-- _______________________________________________________________________ -->
<div class="doc_subsubsection"> <a name="t_classifications">Type
Classifications</a> </div>
@ -380,6 +341,7 @@ classifications:</p>
<table border="1" cellspacing="0" cellpadding="4">
<tbody>
<tr><th>Classification</th><th>Types</th></tr>
<tr>
<td><a name="t_signed">signed</a></td>
<td><tt>sbyte, short, int, long, float, double</tt></td>
@ -436,30 +398,37 @@ elements) and an underlying data type.</p>
<p>The number of elements is a constant integer value, elementtype may
be any type with a size.</p>
<h5>Examples:</h5>
<p> <tt>[40 x int ]</tt>: Array of 40 integer values.<br>
<tt>[41 x int ]</tt>: Array of 41 integer values.<br>
<tt>[40 x uint]</tt>: Array of 40 unsigned integer values.</p>
<p> </p>
<p>Here are some examples of multidimensional arrays:</p>
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td><tt>[3 x [4 x int]]</tt></td>
<td>: 3x4 array integer values.</td>
</tr>
<tr>
<td><tt>[12 x [10 x float]]</tt></td>
<td>: 12x10 array of single precision floating point values.</td>
</tr>
<tr>
<td><tt>[2 x [3 x [4 x uint]]]</tt></td>
<td>: 2x3x4 array of unsigned integer values.</td>
</tr>
</tbody>
<table class="layout">
<tr class="layout">
<td class="left">
<tt>[40 x int ]</tt><br/>
<tt>[41 x int ]</tt><br/>
<tt>[40 x uint]</tt><br/>
</td>
<td class="left">
Array of 40 integer values.<br/>
Array of 41 integer values.<br/>
Array of 40 unsigned integer values.<br/>
</td>
</tr>
</table>
<p>Here are some examples of multidimensional arrays:</p>
<table class="layout">
<tr class="layout">
<td class="left">
<tt>[3 x [4 x int]]</tt><br/>
<tt>[12 x [10 x float]]</tt><br/>
<tt>[2 x [3 x [4 x uint]]]</tt><br/>
</td>
<td class="left">
3x4 array integer values.<br/>
12x10 array of single precision floating point values.<br/>
2x3x4 array of unsigned integer values.<br/>
</td>
</tr>
</table>
</div>
<!-- _______________________________________________________________________ -->
<div class="doc_subsubsection"> <a name="t_function">Function Type</a> </div>
<div class="doc_text">
@ -480,27 +449,23 @@ which indicates that the function takes a variable number of arguments.
Variable argument functions can access their arguments with the <a
href="#int_varargs">variable argument handling intrinsic</a> functions.</p>
<h5>Examples:</h5>
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td><tt>int (int)</tt></td>
<td>: function taking an <tt>int</tt>, returning an <tt>int</tt></td>
</tr>
<tr>
<td><tt>float (int, int *) *</tt></td>
<td>: <a href="#t_pointer">Pointer</a> to a function that takes an
<table class="layout">
<tr class="layout">
<td class="left">
<tt>int (int)</tt> <br/>
<tt>float (int, int *) *</tt><br/>
<tt>int (sbyte *, ...)</tt><br/>
</td>
<td class="left">
function taking an <tt>int</tt>, returning an <tt>int</tt><br/>
<a href="#t_pointer">Pointer</a> to a function that takes an
<tt>int</tt> and a <a href="#t_pointer">pointer</a> to <tt>int</tt>,
returning <tt>float</tt>.</td>
</tr>
<tr>
<td><tt>int (sbyte *, ...)</tt></td>
<td>: A vararg function that takes at least one <a
href="#t_pointer">pointer</a> to <tt>sbyte</tt> (signed char in C), which
returns an integer. This is the signature for <tt>printf</tt> in
LLVM.</td>
</tr>
</tbody>
returning <tt>float</tt>.<br/>
A vararg function that takes at least one <a href="#t_pointer">pointer</a>
to <tt>sbyte</tt> (signed char in C), which returns an integer. This is
the signature for <tt>printf</tt> in LLVM.<br/>
</td>
</tr>
</table>
</div>
@ -519,24 +484,22 @@ instruction.</p>
<h5>Syntax:</h5>
<pre> { &lt;type list&gt; }<br></pre>
<h5>Examples:</h5>
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td><tt>{ int, int, int }</tt></td>
<td>: a triple of three <tt>int</tt> values</td>
</tr>
<tr>
<td><tt>{ float, int (int) * }</tt></td>
<td>: A pair, where the first element is a <tt>float</tt> and the second
element is a <a href="#t_pointer">pointer</a> to a <a
href="#t_function">function</a> that takes an <tt>int</tt>, returning an
<tt>int</tt>.</td>
</tr>
</tbody>
<table class="layout">
<tr class="layout">
<td class="left">
<tt>{ int, int, int }</tt><br/>
<tt>{ float, int (int) * }</tt><br/>
</td>
<td class="left">
a triple of three <tt>int</tt> values<br/>
A pair, where the first element is a <tt>float</tt> and the second element
is a <a href="#t_pointer">pointer</a> to a <a href="#t_function">function</a>
that takes an <tt>int</tt>, returning an <tt>int</tt>.<br/>
</td>
</tr>
</table>
</div>
<!-- _______________________________________________________________________ -->
<div class="doc_subsubsection"> <a name="t_pointer">Pointer Type</a> </div>
<div class="doc_text">
@ -546,23 +509,23 @@ reference to another object, which must live in memory.</p>
<h5>Syntax:</h5>
<pre> &lt;type&gt; *<br></pre>
<h5>Examples:</h5>
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td><tt>[4x int]*</tt></td>
<td>: <a href="#t_pointer">pointer</a> to <a href="#t_array">array</a> of
four <tt>int</tt> values</td>
</tr>
<tr>
<td><tt>int (int *) *</tt></td>
<td>: A <a href="#t_pointer">pointer</a> to a <a
<table class="layout">
<tr class="layout">
<td class="left">
<tt>[4x int]*</tt><br/>
<tt>int (int *) *</tt><br/>
</td>
<td class="left">
A <a href="#t_pointer">pointer</a> to <a href="#t_array">array</a> of
four <tt>int</tt> values<br/>
A <a href="#t_pointer">pointer</a> to a <a
href="#t_function">function</a> that takes an <tt>int</tt>, returning an
<tt>int</tt>.</td>
</tr>
</tbody>
<tt>int</tt>.<br/>
</td>
</tr>
</table>
</div>
<!-- _______________________________________________________________________ -->
<div class="doc_subsubsection"> <a name="t_packed">Packed Type</a> </div>
<div class="doc_text">
@ -578,10 +541,20 @@ considered <a href="#t_firstclass">first class</a>.</p>
<p>The number of elements is a constant integer value, elementtype may
be any integral or floating point type.</p>
<h5>Examples:</h5>
<p> <tt>&lt;4 x int&gt;</tt>: Packed vector of 4 integer values.<br>
<tt>&lt;8 x float&gt;</tt>: Packed vector of 8 floating-point values.<br>
<tt>&lt;2 x uint&gt;</tt>: Packed vector of 2 unsigned integer values.</p>
<p> </p>
<table class="layout">
<tr class="layout">
<td class="left">
<tt>&lt;4 x int&gt;</tt><br/>
<tt>&lt;8 x float&gt;</tt><br/>
<tt>&lt;2 x uint&gt;</tt><br/>
</td>
<td class="left">
Packed vector of 4 integer values.<br/>
Packed vector of 8 floating-point values.<br/>
Packed vector of 2 unsigned integer values.<br/>
</td>
</tr>
</table>
</div>
<!-- *********************************************************************** -->

View File

@ -4,14 +4,6 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>The LLVM Lexicon</title>
<link rel="stylesheet" href="llvm.css" type="text/css">
<style type="text/css">
TR, TD { border: 2px solid gray; padding: 4pt 4pt 2pt 2pt; }
TH { border: 2px solid gray; font-weight: bold; font-size: 105%; }
TABLE { text-align: center; border: 2px solid black;
border-collapse: collapse; margin-top: 1em; margin-left: 1em;
margin-right: 1em; margin-bottom: 1em; }
.td_left { border: 2px solid gray; text-align: left; }
</style>
<meta name="author" content="Various">
<meta name="description"
content="A glossary of terms used with the LLVM project.">
@ -24,52 +16,52 @@
<!-- *********************************************************************** -->
<div class="doc_text">
<table>
<tr><td colspan="8"><b>- <a href="#A">A</a> -</b></td></tr>
<tr><th colspan="8"><b>- <a href="#A">A</a> -</b></th></tr>
<tr>
<td><a href="#ADCE">ADCE</a></td>
<td></td>
<td></td>
</tr>
<tr><td colspan="8"><b>- <a href="#B">B</a> -</b></td></tr>
<tr><th colspan="8"><b>- <a href="#B">B</a> -</b></th></tr>
<tr>
<td><a href="#BURS">BURS</a></td>
<td></td>
<td></td>
</tr>
<tr><td colspan="8"><b>- <a href="#C">C</a> -</b></td></tr>
<tr><th colspan="8"><b>- <a href="#C">C</a> -</b></th></tr>
<tr>
<td><a href="#CSE">CSE</a></td>
<td></td>
<td></td>
</tr>
<tr><td colspan="8"><b>- <a href="#D">D</a> -</b></td></tr>
<tr><th colspan="8"><b>- <a href="#D">D</a> -</b></th></tr>
<tr>
<td><a href="#DSA">DSA</a></td>
<td><a href="#DSE">DSE</a></td>
<td></td>
<td></td>
</tr>
<tr><td colspan="8"><b>- <a href="#I">L</a> -</b></td></tr>
<tr><th colspan="8"><b>- <a href="#I">I</a> -</b></th></tr>
<tr>
<td><a href="#IPA">IPA</a></td>
<td><a href="#IPO">IPO</a></td>
<td></td>
<td></td>
</tr>
<tr><td colspan="8"><b>- <a href="#L">L</a> -</b></td></tr>
<tr><th colspan="8"><b>- <a href="#L">L</a> -</b></th></tr>
<tr>
<td><a href="#LICM">LICM</a></td>
<td><a href="#Load-VN">Load-VN</a></td>
<td></td>
<td></td>
</tr>
<tr><td colspan="8"><b>- <a href="#P">P</a> -</b></td></tr>
<tr><th colspan="8"><b>- <a href="#P">P</a> -</b></th></tr>
<tr>
<td><a href="#PRE">PRE</a></td>
<td></td>
<td></td>
</tr>
<tr><td colspan="8"><b>- <a href="#S">S</a> -</b></td></tr>
<tr><th colspan="8"><b>- <a href="#S">S</a> -</b></th></tr>
<tr>
<td><a href="#SCCP">SCCP</a></td>
<td><a href="#SSA">SSA</a></td>

View File

@ -1939,20 +1939,20 @@ however, are stored in a single dimension and accessed only by name.</p>
the beginning or end of the sequence for both const and non-const. It is
important to keep track of the different kinds of iterators. There are
three idioms worth pointing out:</p>
<table class="doc_table">
<table>
<tr><th>Units</th><th>Iterator</th><th>Idiom</th></tr>
<tr>
<td>Planes Of name/Value maps</td><td>PI</td>
<td><tt><pre>
<td align="left">Planes Of name/Value maps</td><td>PI</td>
<td align="left"><tt><pre>
for (SymbolTable::plane_const_iterator PI = ST.plane_begin(),
PE = ST.plane_end(); PI != PE; ++PI ) {
PE = ST.plane_end(); PI != PE; ++PI ) {
PI-&gt;first // This is the Type* of the plane
PI-&gt;second // This is the SymbolTable::ValueMap of name/Value pairs
</pre></tt></td>
</tr>
<tr>
<td>All name/Type Pairs</td><td>TI</td>
<td><tt><pre>
<td align="left">All name/Type Pairs</td><td>TI</td>
<td align="left"><tt><pre>
for (SymbolTable::type_const_iterator TI = ST.type_begin(),
TE = ST.type_end(); TI != TE; ++TI )
TI-&gt;first // This is the name of the type
@ -1960,8 +1960,8 @@ for (SymbolTable::type_const_iterator TI = ST.type_begin(),
</pre></tt></td>
</tr>
<tr>
<td>name/Value pairs in a plane</td><td>VI</td>
<td><tt><pre>
<td align="left">name/Value pairs in a plane</td><td>VI</td>
<td align="left"><tt><pre>
for (SymbolTable::value_const_iterator VI = ST.value_begin(SomeType),
VE = ST.value_end(SomeType); VI != VE; ++VI )
VI-&gt;first // This is the name of the Value

View File

@ -9,11 +9,10 @@
<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>
@ -61,12 +60,11 @@
</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>