aboutsummaryrefslogtreecommitdiff
path: root/docs/TableGenFundamentals.html
diff options
context:
space:
mode:
authorDavid Greene <greened@obbligato.org>2011-10-07 18:25:05 +0000
committerDavid Greene <greened@obbligato.org>2011-10-07 18:25:05 +0000
commita1b1b79be15c4b79a4282f148085ebad1cf877ca (patch)
treeebcc9a679f17963bd672a734ffd0fce3d66f290c /docs/TableGenFundamentals.html
parent67370ef9030990baceb42181f2db57b7b8d33ca9 (diff)
Remove Multidefs
Multidefs are a bit unwieldy and incomplete. Remove them in favor of another mechanism, probably for loops. Revert "Make Test More Thorough" Revert "Fix a typo." Revert "Vim Support for Multidefs" Revert "Emacs Support for Multidefs" Revert "Document Multidefs" Revert "Add a Multidef Test" Revert "Update Test for Multidefs" Revert "Process Multidefs" Revert "Parser Multidef Support" Revert "Lexer Support for Multidefs" Revert "Add Multidef Data Structures" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141378 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/TableGenFundamentals.html')
-rw-r--r--docs/TableGenFundamentals.html59
1 files changed, 0 insertions, 59 deletions
diff --git a/docs/TableGenFundamentals.html b/docs/TableGenFundamentals.html
index f5b7e4ab57..e8fca32513 100644
--- a/docs/TableGenFundamentals.html
+++ b/docs/TableGenFundamentals.html
@@ -769,65 +769,6 @@ before them.
</pre>
</div>
-<p>
-A special "multidef" may be used inside a multiclass to generate
-several defs given a list of values.
-</p>
-
-<div class="doc_code">
-<pre>
-<b>class</b> Base&lt;int i&gt; {
- int value = i;
-}
-
-<b>multiclass</b> Multi&lt;list&lt;int&gt; values&gt; {
- <b>def</b> ONE : Base&lt;values[0]&gt;;
- <b>def</b> TWO : Base&lt;values[1]&gt;;
-
- <b>multidef</b> COUNT&lt;values, int v, 2&gt; : Base&lt;v&gt;;
-}
-
-<b>defm</b> List : Multi&lt;[1, 2, 3, 4, 5, 6]&lt;;
-...
-
-<i>// Results</i>
-<b>def</b> ListCOUNT {
- int v = ?;
- int value = v;
- list<int> Multi::values = [1, 2, 3, 4, 5, 6];
-}
-<b>def</b> ListONE {
- int value = 1;
-}
-<b>def</b> ListTWO {
- int value = 2;
-}
-<b>def</b> MD2.ListCOUNT {
- int value = 3;
-}
-<b>def</b> MD3.ListCOUNT {
- int value = 4;
-}
-<b>def</b> MD4.ListCOUNT {
- int value = 5;
-}
-<b>def</b> MD5.ListCOUNT {
- int value = 6;
-}
-</pre>
-</div>
-
-<p>
-A multidef takes three "arguments" in the &lt;&gt; notation after the multidef
-name. The first is a list of items to process. The second is a declaration.
-This declaration creates a temporary name used as an iterator. It picks up the
-value of each processed list item as TableGen generates defs from the multidef.
-This temporary may be named and passed into the multidef body as shown in the
-example above. This provides a powerful way to generate defs with various
-values from a single multidef. The final "argument" is an integer value
-indicating where in the list to begin processing. In the above example we
-chose to begin list processing with the third item (index 2).
-</p>
</div>
</div>