Skip to content

Commit 47eb636

Browse files
committed
[AMDGPU][MC][DOC] Updated AMD GPU assembler description
Stage 2: added detailed description of operands See bug 36572: https://bugs.llvm.org/show_bug.cgi?id=36572 llvm-svn: 349368
1 parent f700c8b commit 47eb636

File tree

279 files changed

+12955
-5600
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

279 files changed

+12955
-5600
lines changed

llvm/docs/AMDGPU/AMDGPUAsmGFX7.rst

Lines changed: 1411 additions & 0 deletions
Large diffs are not rendered by default.

llvm/docs/AMDGPU/AMDGPUAsmGFX8.rst

Lines changed: 1846 additions & 0 deletions
Large diffs are not rendered by default.

llvm/docs/AMDGPU/AMDGPUAsmGFX9.rst

Lines changed: 2102 additions & 0 deletions
Large diffs are not rendered by default.

llvm/docs/AMDGPU/gfx7_addr_buf.rst

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
..
2+
**************************************************
3+
* *
4+
* Automatically generated file, do not edit! *
5+
* *
6+
**************************************************
7+
8+
.. _amdgpu_synid7_addr_buf:
9+
10+
vaddr
11+
===========================
12+
13+
This is an optional operand which may specify a 64-bit address, offset and/or index.
14+
15+
*Size:* 0, 1 or 2 dwords. Size is controlled by modifiers :ref:`addr64<amdgpu_synid_addr64>`, :ref:`offen<amdgpu_synid_offen>` and :ref:`idxen<amdgpu_synid_idxen>`:
16+
17+
* If only :ref:`addr64<amdgpu_synid_addr64>` is specified, this operand supplies a 64-bit address. Size is 2 dwords.
18+
* If only :ref:`idxen<amdgpu_synid_idxen>` is specified, this operand supplies an index. Size is 1 dword.
19+
* If only :ref:`offen<amdgpu_synid_offen>` is specified, this operand supplies an offset. Size is 1 dword.
20+
* If both :ref:`idxen<amdgpu_synid_idxen>` and :ref:`offen<amdgpu_synid_offen>` are specified, index is in the first register and offset is in the second. Size is 2 dwords.
21+
* If none of these modifiers are specified, this operand must be set to :ref:`off<amdgpu_synid_off>`.
22+
* All other combinations of these modifiers are illegal.
23+
24+
*Operands:* :ref:`v<amdgpu_synid_v>`, :ref:`off<amdgpu_synid_off>`

llvm/docs/AMDGPU/gfx7_addr_ds.rst

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
..
2+
**************************************************
3+
* *
4+
* Automatically generated file, do not edit! *
5+
* *
6+
**************************************************
7+
8+
.. _amdgpu_synid7_addr_ds:
9+
10+
vaddr
11+
===========================
12+
13+
An offset from the start of GDS/LDS memory.
14+
15+
*Size:* 1 dword.
16+
17+
*Operands:* :ref:`v<amdgpu_synid_v>`
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
..
2+
**************************************************
3+
* *
4+
* Automatically generated file, do not edit! *
5+
* *
6+
**************************************************
7+
8+
.. _amdgpu_synid7_addr_flat:
9+
10+
vaddr
11+
===========================
12+
13+
A 64-bit flat address.
14+
15+
*Size:* 2 dwords.
16+
17+
*Operands:* :ref:`v<amdgpu_synid_v>`
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
..
2+
**************************************************
3+
* *
4+
* Automatically generated file, do not edit! *
5+
* *
6+
**************************************************
7+
8+
.. _amdgpu_synid7_addr_mimg:
9+
10+
vaddr
11+
===========================
12+
13+
Image address which includes from one to four dimensional coordinates and other data used to locate a position in the image.
14+
15+
*Size:* 1, 2, 3, 4, 8 or 16 dwords. Actual size depends on opcode and specific image being handled.
16+
17+
Note 1. Image format and dimensions are encoded in the image resource constant but not in the instruction.
18+
19+
Note 2. Actually image address size may vary from 1 to 13 dwords, but assembler currently supports a limited range of register sequences.
20+
21+
*Operands:* :ref:`v<amdgpu_synid_v>`

llvm/docs/AMDGPU/gfx7_attr.rst

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
..
2+
**************************************************
3+
* *
4+
* Automatically generated file, do not edit! *
5+
* *
6+
**************************************************
7+
8+
.. _amdgpu_synid7_attr:
9+
10+
attr
11+
===========================
12+
13+
Interpolation attribute and channel:
14+
15+
============== ===================================
16+
Syntax Description
17+
============== ===================================
18+
attr{0..32}.x Attribute 0..32 with *x* channel.
19+
attr{0..32}.y Attribute 0..32 with *y* channel.
20+
attr{0..32}.z Attribute 0..32 with *z* channel.
21+
attr{0..32}.w Attribute 0..32 with *w* channel.
22+
============== ===================================
23+
24+
Examples:
25+
26+
.. code-block:: nasm
27+
28+
v_interp_p1_f32 v1, v0, attr0.x
29+
v_interp_p1_f32 v1, v0, attr32.w
30+
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
..
2+
**************************************************
3+
* *
4+
* Automatically generated file, do not edit! *
5+
* *
6+
**************************************************
7+
8+
.. _amdgpu_synid7_base_smem_addr:
9+
10+
sbase
11+
===========================
12+
13+
A 64-bit base address for scalar memory operations.
14+
15+
*Size:* 2 dwords.
16+
17+
*Operands:* :ref:`s<amdgpu_synid_s>`, :ref:`flat_scratch<amdgpu_synid_flat_scratch>`, :ref:`vcc<amdgpu_synid_vcc>`, :ref:`trap<amdgpu_synid_trap>`
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
..
2+
**************************************************
3+
* *
4+
* Automatically generated file, do not edit! *
5+
* *
6+
**************************************************
7+
8+
.. _amdgpu_synid7_base_smem_buf:
9+
10+
sbase
11+
===========================
12+
13+
A 128-bit buffer resource constant for scalar memory operations which provides a base address, a size and a stride.
14+
15+
*Size:* 4 dwords.
16+
17+
*Operands:* :ref:`s<amdgpu_synid_s>`, :ref:`ttmp<amdgpu_synid_ttmp>`

0 commit comments

Comments
 (0)