summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-11-06 19:57:21 +0000
committerChris Lattner <sabre@nondot.org>2010-11-06 19:57:21 +0000
commit90fd797dc739319347861d4f3984bc8952ae9a29 (patch)
tree606f6e49e3dc37ec32c49d07519667df46bba585 /docs
parent8d5acb7007decaf0c30bf4a3d4c55e5cc2cce0a7 (diff)
downloadllvm-90fd797dc739319347861d4f3984bc8952ae9a29.tar.gz
llvm-90fd797dc739319347861d4f3984bc8952ae9a29.tar.bz2
llvm-90fd797dc739319347861d4f3984bc8952ae9a29.tar.xz
add (and document) the ability for alias results to have
fixed physical registers. Start moving fp comparison aliases to the .td file (which default to using %st1 if nothing is specified). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118352 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r--docs/CodeGenerator.html12
1 files changed, 10 insertions, 2 deletions
diff --git a/docs/CodeGenerator.html b/docs/CodeGenerator.html
index 376b91c8f1..8eb43d58ba 100644
--- a/docs/CodeGenerator.html
+++ b/docs/CodeGenerator.html
@@ -1998,12 +1998,20 @@ def : InstAlias&lt;"clrq $reg", (XOR64rr GR64:$reg, GR64:$reg)&gt;;
<p>This example also shows that tied operands are only listed once. In the X86
backend, XOR8rr has two input GR8's and one output GR8 (where an input is tied
to the output). InstAliases take a flattened operand list without duplicates
-for tied operands. The result of an instruction alias can also use immediates,
-which are added as simple immediate operands in the result, for example:</p>
+for tied operands. The result of an instruction alias can also use immediates
+and fixed physical registers which are added as simple immediate operands in the
+result, for example:</p>
<div class="doc_code">
<pre>
+// Fixed Immediate operand.
def : InstAlias&lt;"aad", (AAD8i8 10)&gt;;
+
+// Fixed register operand.
+def : InstAlias&lt;"fcomi", (COM_FIr ST1)&gt;;
+
+// Simple alias.
+def : InstAlias&lt;"fcomi $reg", (COM_FIr RST:$reg)&gt;;
</pre>
</div>