[llvm-commits] Suggested patch to the Language Reference
Chris Lattner
clattner at apple.com
Fri Jan 4 08:07:09 PST 2008
Applied, thanks!
-Chris
http://nondot.org/sabre
http://llvm.org
On Jan 3, 2008, at 3:16 PM, Alain Frisch <alain at frisch.fr> wrote:
> Hello,
>
> (Following a discussion on irc.)
>
> The current version of the Language Reference still mentions integer
> types as being primitive. It also fails to mention three floating
> point types. The attached patch (in the docs/ subdir) fixes these
> issues.
>
>
> -- Alain
> Index: LangRef.html
> ===================================================================
> --- LangRef.html (revision 45557)
> +++ LangRef.html (working copy)
> @@ -33,9 +33,12 @@
> </li>
> <li><a href="#typesystem">Type System</a>
> <ol>
> + <li><a href="#t_classifications">Type Classifications</a></li>
> <li><a href="#t_primitive">Primitive Types</a>
> <ol>
> - <li><a href="#t_classifications">Type Classifications</
> a></li>
> + <li><a href="#t_floating">Floating Point Types</a></li>
> + <li><a href="#t_void">Void Type</a></li>
> + <li><a href="#t_label">Label Type</a></li>
> </ol>
> </li>
> <li><a href="#t_derived">Derived Types</a>
> @@ -974,59 +977,49 @@
> </div>
>
> <!--
> ===
> ====================================================================
> -->
> -<div class="doc_subsection"> <a name="t_primitive">Primitive Types</
> a> </div>
> -<div class="doc_text">
> -<p>The primitive types are the fundamental building blocks of the
> LLVM
> -system. The current set of primitive types is as follows:</p>
> -
> -<table class="layout">
> - <tr class="layout">
> - <td class="left">
> - <table>
> - <tbody>
> - <tr><th>Type</th><th>Description</th></tr>
> - <tr><td><tt><a name="t_void">void</a></tt></td><td>No
> value</td></tr>
> - <tr><td><tt>label</tt></td><td>Branch destination</td></tr>
> - </tbody>
> - </table>
> - </td>
> - <td class="right">
> - <table>
> - <tbody>
> - <tr><th>Type</th><th>Description</th></tr>
> - <tr><td><tt>float</tt></td><td>32-bit floating point
> value</td></tr>
> - <tr><td><tt>double</tt></td><td>64-bit floating point
> value</td></tr>
> - </tbody>
> - </table>
> - </td>
> - </tr>
> -</table>
> -</div>
> -
> -<!--
> _______________________________________________________________________
> -->
> -<div class="doc_subsubsection"> <a name="t_classifications">Type
> +<div class="doc_subsection"> <a name="t_classifications">Type
> Classifications</a> </div>
> <div class="doc_text">
> -<p>These different primitive types fall into a few useful
> +<p>The types fall into a few useful
> classifications:</p>
>
> <table border="1" cellspacing="0" cellpadding="4">
> <tbody>
> <tr><th>Classification</th><th>Types</th></tr>
> <tr>
> - <td><a name="t_integer">integer</a></td>
> + <td><a href="#t_integer">integer</a></td>
> <td><tt>i1, i2, i3, ... i8, ... i16, ... i32, ... i64, ... </
> tt></td>
> </tr>
> <tr>
> - <td><a name="t_floating">floating point</a></td>
> - <td><tt>float, double</tt></td>
> + <td><a href="#t_floating">floating point</a></td>
> + <td><tt>float, double, x86_fp80, fp128, ppc_fp128</tt></td>
> </tr>
> <tr>
> <td><a name="t_firstclass">first class</a></td>
> - <td><tt>i1, ..., float, double, <br/>
> - <a href="#t_pointer">pointer</a>,<a
> href="#t_vector">vector</a></tt>
> + <td><a href="#t_integer">integer</a>,
> + <a href="#t_floating">floating point</a>,
> + <a href="#t_pointer">pointer</a>,
> + <a href="#t_vector">vector</a>
> </td>
> </tr>
> + <tr>
> + <td><a href="#t_primitive">primitive</a></td>
> + <td><a href="#t_label">label</a>,
> + <a href="#t_void">void</a>,
> + <a href="#t_integer">integer</a>,
> + <a href="#t_floating">floating point</a>.</td>
> + </tr>
> + <tr>
> + <td><a href="#t_derived">derived</a></td>
> + <td><a href="#t_integer">integer</a>,
> + <a href="#t_array">array</a>,
> + <a href="#t_function">function</a>,
> + <a href="#t_pointer">pointer</a>,
> + <a href="#t_struct">structure</a>,
> + <a href="#t_pstruct">packed structure</a>,
> + <a href="#t_vector">vector</a>,
> + <a href="#t_opaque">opaque</a>.
> + </tr>
> </tbody>
> </table>
>
> @@ -1038,6 +1031,57 @@
> </div>
>
> <!--
> ===
> ====================================================================
> -->
> +<div class="doc_subsection"> <a name="t_primitive">Primitive Types</
> a> </div>
> +<div class="doc_text">
> +<p>The primitive types are the fundamental building blocks of the
> LLVM
> +system.</p>
> +
> +<!--
> _______________________________________________________________________
> -->
> +<div class="doc_subsubsection"> <a name="t_floating">Floating Point
> Types</a> </div>
> +
> +<div class="doc_text">
> + <table>
> + <tbody>
> + <tr><th>Type</th><th>Description</th></tr>
> + <tr><td><tt>float</tt></td><td>32-bit floating point
> value</td></tr>
> + <tr><td><tt>double</tt></td><td>64-bit floating point
> value</td></tr>
> + <tr><td><tt>fp128</tt></td><td>128-bit floating point
> value (112-bit mantissa)</td></tr>
> + <tr><td><tt>x86_fp80</tt></td><td>80-bit floating point
> value (X87)</td></tr>
> + <tr><td><tt>ppc_fp128</tt></td><td>128-bit floating point
> value (two 64-bits)</td></tr>
> + </tbody>
> + </table>
> +</div>
> +
> +<!--
> _______________________________________________________________________
> -->
> +<div class="doc_subsubsection"> <a name="t_void">Void Type</a> </div>
> +
> +<div class="doc_text">
> +<h5>Overview:</h5>
> +<p>The void type does not represent any value and has no size.</p>
> +
> +<h5>Syntax:</h5>
> +
> +<pre>
> + void
> +</pre>
> +</div>
> +
> +<!--
> _______________________________________________________________________
> -->
> +<div class="doc_subsubsection"> <a name="t_label">Label Type</a> </
> div>
> +
> +<div class="doc_text">
> +<h5>Overview:</h5>
> +<p>The label type represents code labels.</p>
> +
> +<h5>Syntax:</h5>
> +
> +<pre>
> + label
> +</pre>
> +</div>
> +
> +
> +<!--
> ===
> ====================================================================
> -->
> <div class="doc_subsection"> <a name="t_derived">Derived Types</a> </
> div>
>
> <div class="doc_text">
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list