[llvm] 66310aa - fix typos; improve a couple of descriptions;

Paul C. Anagnostopoulos via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 8 12:49:37 PDT 2020


Author: Paul C. Anagnostopoulos
Date: 2020-09-08T15:48:18-04:00
New Revision: 66310aafa0da47dd4664a1200afc7e22cab15b65

URL: https://github.com/llvm/llvm-project/commit/66310aafa0da47dd4664a1200afc7e22cab15b65
DIFF: https://github.com/llvm/llvm-project/commit/66310aafa0da47dd4664a1200afc7e22cab15b65.diff

LOG: fix typos; improve a couple of descriptions;
add release note

Added: 
    

Modified: 
    llvm/docs/ReleaseNotes.rst
    llvm/docs/TableGen/ProgRef.rst

Removed: 
    


################################################################################
diff  --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst
index 59897806c37a..47ce9fa10d90 100644
--- a/llvm/docs/ReleaseNotes.rst
+++ b/llvm/docs/ReleaseNotes.rst
@@ -69,10 +69,13 @@ Changes to building LLVM
 Changes to TableGen
 -------------------
 
+* The new "TableGen Programmer's Reference" replaces the "TableGen Language
+  Introduction" and "TableGen Language Reference" documents.
+
 * The syntax for specifying an integer range in a range list has changed.
   The old syntax used a hyphen in the range (e.g., ``{0-9}``). The new syntax
-  uses the "`...`" range punctuator (e.g., ``{0...9}``). The hyphen syntax
-  is deprecated. The "TableGen Language Reference" document has been updated.
+  uses the "`...`" range punctuation (e.g., ``{0...9}``). The hyphen syntax
+  is deprecated.
 
 Changes to the ARM Backend
 --------------------------

diff  --git a/llvm/docs/TableGen/ProgRef.rst b/llvm/docs/TableGen/ProgRef.rst
index 83684ab41c28..07f0ba8a54dd 100644
--- a/llvm/docs/TableGen/ProgRef.rst
+++ b/llvm/docs/TableGen/ProgRef.rst
@@ -140,7 +140,7 @@ the file is printed for review.
 
 The following are the basic punctuation tokens::
 
-   - + [ ] { } ( ) < > : ; .  = ? #
+   - + [ ] { } ( ) < > : ; . ... = ? #
 
 Literals
 --------
@@ -328,8 +328,8 @@ to an entity of type ``bits<4>``.
 .. warning::
   The peculiar last form of :token:`RangePiece` is due to the fact that the
   "``-``" is included in the :token:`TokInteger`, hence ``1-5`` gets lexed as
-  two consecutive tokens, with values ``1`` and ``-5``,
-  instead of "1", "-", and "5".
+  two consecutive tokens, with values ``1`` and ``-5``, instead of "1", "-",
+  and "5". The use of hyphen as the range punctuation is deprecated.
 
 Simple values
 -------------
@@ -431,7 +431,7 @@ sense after reading the remainder of this guide.
 
 * The iteration variable of a ``foreach``, such as the use of ``i`` in::
 
-     foreach i = 0..5 in
+     foreach i = 0...5 in
        def Foo#i;
 
 .. productionlist::
@@ -466,11 +466,11 @@ primary value. Here are the possible suffixes for some primary *value*.
 *value*\ ``{17}``
     The final value is bit 17 of the integer *value* (note the braces).
 
-*value*\ ``{8..15}``
+*value*\ ``{8...15}``
     The final value is bits 8--15 of the integer *value*. The order of the
-    bits can be reversed by specifying ``{15..8}``.
+    bits can be reversed by specifying ``{15...8}``.
 
-*value*\ ``[4..7,17,2..3,4]``
+*value*\ ``[4...7,17,2...3,4]``
     The final value is a new list that is a slice of the list *value* (note
     the brackets). The
     new list contains elements 4, 5, 6, 7, 17, 2, 3, and 4. Elements may be
@@ -827,10 +827,13 @@ template that expands into multiple records.
    MultiClassID: `TokIdentifier`
 
 As with regular classes, the multiclass has a name and can accept template
-arguments. The body of the multiclass contains a series of statements that
-define records, using :token:`Def` and :token:`Defm`. In addition,
-:token:`Defvar`, :token:`Foreach`, and :token:`Let`
-statements can be used to factor out even more common elements.
+arguments. A multiclass can inherit from other multiclasses, which causes
+the other multiclasses to be expanded and contribute to the record
+definitions in the inheriting multiclass. The body of the multiclass
+contains a series of statements that define records, using :token:`Def` and
+:token:`Defm`. In addition, :token:`Defvar`, :token:`Foreach`, and
+:token:`Let` statements can be used to factor out even more common elements.
+The :token:`If` statement can also be used.
 
 Also as with regular classes, the multiclass has the implicit template
 argument ``NAME`` (see NAME_). When a named (non-anonymous) record is
@@ -1128,8 +1131,8 @@ the next iteration.  The following ``defvar`` will not work::
 Variables can also be defined with ``defvar`` in a record body. See
 `Defvar in Record Body`_ for more details.
 
-``foreach`` --- iterate over a sequence
----------------------------------------
+``foreach`` --- iterate over a sequence of statements
+-----------------------------------------------------
 
 The ``foreach`` statement iterates over a series of statements, varying a
 variable over a sequence of values.
@@ -1529,7 +1532,7 @@ and non-0 as true.
 ``!shl(``\ *a*\ ``,`` *count*\ ``)``
     This operator shifts *a* left logically by *count* bits and produces the resulting
     value. The operation is performed on a 64-bit integer; the result
-    is undefined for shift counts outside 0..63.
+    is undefined for shift counts outside 0...63.
 
 ``!size(``\ *a*\ ``)``
     This operator produces the number of elements in the list *a*.
@@ -1537,12 +1540,12 @@ and non-0 as true.
 ``!sra(``\ *a*\ ``,`` *count*\ ``)``
     This operator shifts *a* right arithmetically by *count* bits and produces the resulting
     value. The operation is performed on a 64-bit integer; the result
-    is undefined for shift counts outside 0..63.
+    is undefined for shift counts outside 0...63.
 
 ``!srl(``\ *a*\ ``,`` *count*\ ``)``
     This operator shifts *a* right logically by *count* bits and produces the resulting
     value. The operation is performed on a 64-bit integer; the result
-    is undefined for shift counts outside 0..63.
+    is undefined for shift counts outside 0...63.
 
 ``!strconcat(``\ *str1*\ ``,`` *str2*\ ``, ...)``
     This operator concatenates the string arguments *str1*, *str2*, etc., and


        


More information about the llvm-commits mailing list