[llvm] 9e3f86e - [AMDGPU][MC][NFC][DOC] Updated description of registers

Dmitry Preobrazhensky via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 3 03:13:12 PDT 2021


Author: Dmitry Preobrazhensky
Date: 2021-09-03T13:09:54+03:00
New Revision: 9e3f86e273d07786f5efa41494581e4971d8b0c0

URL: https://github.com/llvm/llvm-project/commit/9e3f86e273d07786f5efa41494581e4971d8b0c0
DIFF: https://github.com/llvm/llvm-project/commit/9e3f86e273d07786f5efa41494581e4971d8b0c0.diff

LOG: [AMDGPU][MC][NFC][DOC] Updated description of registers

Corrected list of available register tuples to reflect changes introduced by
commits https://reviews.llvm.org/D103672 and https://reviews.llvm.org/D103800

See bug https://bugs.llvm.org/show_bug.cgi?id=51388

Added: 
    

Modified: 
    llvm/docs/AMDGPU/gfx10_vaddr_4.rst
    llvm/docs/AMDGPUOperandSyntax.rst

Removed: 
    


################################################################################
diff  --git a/llvm/docs/AMDGPU/gfx10_vaddr_4.rst b/llvm/docs/AMDGPU/gfx10_vaddr_4.rst
index c7ac072fb1c9c..3e6d0c8a2db06 100644
--- a/llvm/docs/AMDGPU/gfx10_vaddr_4.rst
+++ b/llvm/docs/AMDGPU/gfx10_vaddr_4.rst
@@ -17,6 +17,6 @@ This operand may be specified using either :ref:`standard VGPR syntax<amdgpu_syn
 *Size:* 1-13 dwords. Actual size depends on syntax, opcode, :ref:`dim<amdgpu_synid_dim>` and :ref:`a16<amdgpu_synid_a16>`.
 
 * If specified using :ref:`NSA VGPR syntax<amdgpu_synid_nsa>`, the size is 1-13 dwords.
-* If specified using :ref:`standard VGPR syntax<amdgpu_synid_v>`, the size is 1, 2, 3, 4, 8 or 16 dwords. Note that assembler currently supports a limited range of register sequences.
+* If specified using :ref:`standard VGPR syntax<amdgpu_synid_v>`, the size is 1-8 dwords. Opcodes which require more than 8 dwords for address size must specify 16 dwords due to a limited range of supported register sequences.
 
 *Operands:* :ref:`v<amdgpu_synid_v>`

diff  --git a/llvm/docs/AMDGPUOperandSyntax.rst b/llvm/docs/AMDGPUOperandSyntax.rst
index d41f429bccb33..acfd1b60ff3af 100644
--- a/llvm/docs/AMDGPUOperandSyntax.rst
+++ b/llvm/docs/AMDGPUOperandSyntax.rst
@@ -31,7 +31,7 @@ Vector registers. There are 256 32-bit vector registers.
 
 A sequence of *vector* registers may be used to operate with more than 32 bits of data.
 
-Assembler currently supports sequences of 1, 2, 3, 4, 5, 6, 8, 16 and 32 *vector* registers.
+Assembler currently supports sequences of 1, 2, 3, 4, 5, 6, 7, 8, 16 and 32 *vector* registers.
 
     =================================================== ====================================================================
     Syntax                                              Description
@@ -61,7 +61,7 @@ Note: *N* and *K* must satisfy the following conditions:
 * *N* <= *K*.
 * 0 <= *N* <= 255.
 * 0 <= *K* <= 255.
-* *K-N+1* must be equal to 1, 2, 3, 4, 5, 6, 8, 16 or 32.
+* *K-N+1* must be equal to 1, 2, 3, 4, 5, 6, 7, 8, 16 or 32.
 
 GFX90A has an additional alignment requirement: pairs of *vector* registers must be even-aligned
 (first register must be even).
@@ -114,7 +114,7 @@ Accumulator registers. There are 256 32-bit accumulator registers.
 
 A sequence of *accumulator* registers may be used to operate with more than 32 bits of data.
 
-Assembler currently supports sequences of 1, 2, 3, 4, 5, 6, 8, 16 and 32 *accumulator* registers.
+Assembler currently supports sequences of 1, 2, 3, 4, 5, 6, 7, 8, 16 and 32 *accumulator* registers.
 
     =================================================== ========================================================= ====================================================================
     Syntax                                              An Alternative Syntax (SP3)                               Description
@@ -144,7 +144,7 @@ Note: *N* and *K* must satisfy the following conditions:
 * *N* <= *K*.
 * 0 <= *N* <= 255.
 * 0 <= *K* <= 255.
-* *K-N+1* must be equal to 1, 2, 3, 4, 5, 6, 8, 16 or 32.
+* *K-N+1* must be equal to 1, 2, 3, 4, 5, 6, 7, 8, 16 or 32.
 
 GFX90A has an additional alignment requirement: pairs of *accumulator* registers must be even-aligned
 (first register must be even).
@@ -185,7 +185,7 @@ Scalar 32-bit registers. The number of available *scalar* registers depends on G
     ======= ============================
 
 A sequence of *scalar* registers may be used to operate with more than 32 bits of data.
-Assembler currently supports sequences of 1, 2, 4, 8, 16 and 32 *scalar* registers.
+Assembler currently supports sequences of 1, 2, 3, 4, 5, 6, 7, 8, 16 and 32 *scalar* registers.
 
 Pairs of *scalar* registers must be even-aligned (first register must be even).
 Sequences of 4 and more *scalar* registers must be quad-aligned.
@@ -221,7 +221,7 @@ Note: *N* and *K* must satisfy the following conditions:
 * *N* <= *K*.
 * 0 <= *N* < *SMAX*\ , where *SMAX* is the number of available *scalar* registers.
 * 0 <= *K* < *SMAX*\ , where *SMAX* is the number of available *scalar* registers.
-* *K-N+1* must be equal to 1, 2, 4, 8, 16 or 32.
+* *K-N+1* must be equal to 1, 2, 3, 4, 5, 6, 7, 8, 16 or 32.
 
 Examples:
 
@@ -273,7 +273,7 @@ The number of available *ttmp* registers depends on GPU:
     ======= ===========================
 
 A sequence of *ttmp* registers may be used to operate with more than 32 bits of data.
-Assembler currently supports sequences of 1, 2, 4, 8 and 16 *ttmp* registers.
+Assembler currently supports sequences of 1, 2, 3, 4, 5, 6, 7, 8 and 16 *ttmp* registers.
 
 Pairs of *ttmp* registers must be even-aligned (first register must be even).
 Sequences of 4 and more *ttmp* registers must be quad-aligned.
@@ -307,7 +307,7 @@ Note: *N* and *K* must satisfy the following conditions:
 * *N* <= *K*.
 * 0 <= *N* < *TMAX*, where *TMAX* is the number of available *ttmp* registers.
 * 0 <= *K* < *TMAX*, where *TMAX* is the number of available *ttmp* registers.
-* *K-N+1* must be equal to 1, 2, 4, 8 or 16.
+* *K-N+1* must be equal to 1, 2, 3, 4, 5, 6, 7, 8 or 16.
 
 Examples:
 


        


More information about the llvm-commits mailing list