summaryrefslogtreecommitdiffstats
path: root/llvm/docs/TableGenFundamentals.html
diff options
context:
space:
mode:
authorDavid Greene <greened@obbligato.org>2009-04-22 20:18:10 +0000
committerDavid Greene <greened@obbligato.org>2009-04-22 20:18:10 +0000
commita9c6c5d39bd577a25801c39ca38b38ea4f68ce45 (patch)
treecea7342c35f45d16c4e61415e5c026eeb71ab453 /llvm/docs/TableGenFundamentals.html
parentd3a5a9d7fa4922d5399de56c7ef67dbb4eb23b24 (diff)
downloadbcm5719-llvm-a9c6c5d39bd577a25801c39ca38b38ea4f68ce45.tar.gz
bcm5719-llvm-a9c6c5d39bd577a25801c39ca38b38ea4f68ce45.zip
Implement !nameconcat to concatenate strings and look up the resulting
name in the symbol table, returning an object. llvm-svn: 69822
Diffstat (limited to 'llvm/docs/TableGenFundamentals.html')
-rw-r--r--llvm/docs/TableGenFundamentals.html10
1 files changed, 8 insertions, 2 deletions
diff --git a/llvm/docs/TableGenFundamentals.html b/llvm/docs/TableGenFundamentals.html
index e9915cb0294..42839176cbf 100644
--- a/llvm/docs/TableGenFundamentals.html
+++ b/llvm/docs/TableGenFundamentals.html
@@ -398,6 +398,11 @@ supported include:</p>
<dt><tt>!strconcat(a, b)</tt></dt>
<dd>A string value that is the result of concatenating the 'a' and 'b'
strings.</dd>
+<dt><tt>!nameconcat(a, b)</tt></dt>
+ <dd>A value that is the result of concatenating the 'a' and 'b'
+ strings and looking up the resulting name in the symbol table. The symbol type
+ determines the type of the resulting value. If the symbol is not found,
+ TableGen emits an error and aborts.</dd>
</dl>
<p>Note that all of the values have rules specifying how they convert to values
@@ -627,8 +632,9 @@ Here is an example TableGen fragment that shows this idea:
<p>The name of the resultant definitions has the multidef fragment names
appended to them, so this defines <tt>ADD_rr</tt>, <tt>ADD_ri</tt>,
- <tt>SUB_rr</tt>, etc. Using a multiclass this way is exactly equivalent to
- instantiating the classes multiple times yourself, e.g. by writing:</p>
+ <tt>SUB_rr</tt>, etc. Using a multiclass this way is exactly
+ equivalent to instantiating the classes multiple times yourself,
+ e.g. by writing:</p>
<div class="doc_code">
<pre>
OpenPOWER on IntegriCloud