[llvm-commits] [llvm] r115255 - /llvm/trunk/docs/LangRef.html
Nick Lewycky
nicholas at mxc.ca
Thu Sep 30 18:02:28 PDT 2010
Dale Johannesen wrote:
> Author: johannes
> Date: Thu Sep 30 19:48:59 2010
> New Revision: 115255
>
> URL: http://llvm.org/viewvc/llvm-project?rev=115255&view=rev
> Log:
> Add some doc for the x86mmx type.
>
>
> Modified:
> llvm/trunk/docs/LangRef.html
>
> Modified: llvm/trunk/docs/LangRef.html
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/LangRef.html?rev=115255&r1=115254&r2=115255&view=diff
> ==============================================================================
> --- llvm/trunk/docs/LangRef.html (original)
> +++ llvm/trunk/docs/LangRef.html Thu Sep 30 19:48:59 2010
> @@ -62,6 +62,7 @@
> <ol>
> <li><a href="#t_integer">Integer Type</a></li>
> <li><a href="#t_floating">Floating Point Types</a></li>
> +<li><a href="#t_x86mmx">X86mmx Type</a></li>
> <li><a href="#t_void">Void Type</a></li>
> <li><a href="#t_label">Label Type</a></li>
> <li><a href="#t_metadata">Metadata Type</a></li>
> @@ -1484,6 +1485,7 @@
> <td><a href="#t_label">label</a>,
> <a href="#t_void">void</a>,
> <a href="#t_floating">floating point</a>,
> +<a href="#t_x86mmx">x86mmx</a>,
> <a href="#t_metadata">metadata</a>.</td>
> </tr>
> <tr>
> @@ -1571,6 +1573,21 @@
> </div>
>
> <!-- _______________________________________________________________________ -->
> +<div class="doc_subsubsection"> <a name="t_x86mmx">X86mmx Type</a> </div>
> +
> +<div class="doc_text">
> +
> +<h5>Overview:</h5>
> +<p>The x86mmx type represents a value held in an MMX register on an x86 machine. The operations allowed on it are quite limited: parameters and return values, load and store, and bitcast. User-specified MMX instructions are represented as intrinsic or asm calls with arguments and/or results of this type. There are no arrays, vectors or constants of this type.</p>
Hold on, the rule is that you can have an undef of any type, and I think
you can have a null/zeroinitialized of any type too.
If you really can't permit this -- I hate to say it after you've done
all this work -- but how bad would it be to make MMX work like the
half-width float support, where there are only intrinsics to do
conversions to and from, while operations have to be done on a proper
LLVM type? It sounds like that model may be a better fit.
> +
> +<h5>Syntax:</h5>
> +<pre>
> + void
"void" -> "x86mmx" :)
Nick
> +</pre>
> +
> +</div>
> +
> +<!-- _______________________________________________________________________ -->
> <div class="doc_subsubsection"> <a name="t_void">Void Type</a> </div>
>
> <div class="doc_text">
> @@ -2050,6 +2067,7 @@
> they match the long double format on your target. All hexadecimal formats
> are big-endian (sign bit at the left).</p>
>
> +<p>There are no constants of type x86mmx.</p>
> </div>
>
> <!-- ======================================================================= -->
>
>
> _______________________________________________
> 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