llvm.org GIT mirror llvm / 51120d7
[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 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@349368 91177308-0d34-0410-b5e6-96231b3b80d8 Dmitry Preobrazhensky 7 months ago
279 changed file(s) with 13250 addition(s) and 5895 deletion(s). Raw diff Collapse all Expand all
0 ..
1 **************************************************
2 * *
3 * Automatically generated file, do not edit! *
4 * *
5 **************************************************
6
7 ============================
8 Syntax of GFX7 Instructions
9 ============================
10
11 .. contents::
12 :local:
13
14 Notation
15 ========
16
17 Notation used in this document is explained :ref:`here`.
18
19 Introduction
20 ============
21
22 An overview of generic syntax and other features of AMDGPU instructions may be found :ref:`in this document`.
23
24 Instructions
25 ============
26
27
28 DS
29 -----------------------
30
31 .. parsed-literal::
32
33 **INSTRUCTION** **DST** **SRC0** **SRC1** **SRC2** **MODIFIERS**
34 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
35 ds_add_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
36 ds_add_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
37 ds_add_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
38 ds_add_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
39 ds_add_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
40 ds_add_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
41 ds_and_b32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
42 ds_and_b64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
43 ds_and_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
44 ds_and_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
45 ds_and_src2_b32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
46 ds_and_src2_b64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
47 ds_append :ref:`vdst` :ref:`ds_offset16` :ref:`gds`
48 ds_cmpst_b32 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
49 ds_cmpst_b64 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
50 ds_cmpst_f32 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
51 ds_cmpst_f64 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
52 ds_cmpst_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
53 ds_cmpst_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
54 ds_cmpst_rtn_f32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
55 ds_cmpst_rtn_f64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
56 ds_condxchg32_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
57 ds_consume :ref:`vdst` :ref:`ds_offset16` :ref:`gds`
58 ds_dec_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
59 ds_dec_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
60 ds_dec_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
61 ds_dec_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
62 ds_dec_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
63 ds_dec_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
64 ds_gws_barrier :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
65 ds_gws_init :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
66 ds_gws_sema_br :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
67 ds_gws_sema_p :ref:`ds_offset16` :ref:`gds`
68 ds_gws_sema_release_all :ref:`ds_offset16` :ref:`gds`
69 ds_gws_sema_v :ref:`ds_offset16` :ref:`gds`
70 ds_inc_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
71 ds_inc_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
72 ds_inc_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
73 ds_inc_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
74 ds_inc_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
75 ds_inc_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
76 ds_max_f32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
77 ds_max_f64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
78 ds_max_i32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
79 ds_max_i64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
80 ds_max_rtn_f32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
81 ds_max_rtn_f64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
82 ds_max_rtn_i32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
83 ds_max_rtn_i64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
84 ds_max_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
85 ds_max_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
86 ds_max_src2_f32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
87 ds_max_src2_f64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
88 ds_max_src2_i32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
89 ds_max_src2_i64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
90 ds_max_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
91 ds_max_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
92 ds_max_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
93 ds_max_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
94 ds_min_f32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
95 ds_min_f64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
96 ds_min_i32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
97 ds_min_i64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
98 ds_min_rtn_f32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
99 ds_min_rtn_f64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
100 ds_min_rtn_i32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
101 ds_min_rtn_i64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
102 ds_min_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
103 ds_min_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
104 ds_min_src2_f32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
105 ds_min_src2_f64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
106 ds_min_src2_i32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
107 ds_min_src2_i64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
108 ds_min_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
109 ds_min_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
110 ds_min_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
111 ds_min_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
112 ds_mskor_b32 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
113 ds_mskor_b64 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
114 ds_mskor_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
115 ds_mskor_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
116 ds_nop
117 ds_or_b32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
118 ds_or_b64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
119 ds_or_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
120 ds_or_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
121 ds_or_src2_b32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
122 ds_or_src2_b64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
123 ds_ordered_count :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
124 ds_read2_b32 :ref:`vdst`::ref:`b32x2`, :ref:`vaddr` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
125 ds_read2_b64 :ref:`vdst`::ref:`b64x2`, :ref:`vaddr` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
126 ds_read2st64_b32 :ref:`vdst`::ref:`b32x2`, :ref:`vaddr` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
127 ds_read2st64_b64 :ref:`vdst`::ref:`b64x2`, :ref:`vaddr` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
128 ds_read_b128 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
129 ds_read_b32 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
130 ds_read_b64 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
131 ds_read_b96 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
132 ds_read_i16 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
133 ds_read_i8 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
134 ds_read_u16 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
135 ds_read_u8 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
136 ds_rsub_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
137 ds_rsub_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
138 ds_rsub_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
139 ds_rsub_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
140 ds_rsub_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
141 ds_rsub_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
142 ds_sub_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
143 ds_sub_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
144 ds_sub_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
145 ds_sub_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
146 ds_sub_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
147 ds_sub_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
148 ds_swizzle_b32 :ref:`vdst`, :ref:`vaddr` :ref:`sw_offset16` :ref:`gds`
149 ds_wrap_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
150 ds_write2_b32 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
151 ds_write2_b64 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
152 ds_write2st64_b32 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
153 ds_write2st64_b64 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
154 ds_write_b128 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
155 ds_write_b16 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
156 ds_write_b32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
157 ds_write_b64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
158 ds_write_b8 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
159 ds_write_b96 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
160 ds_write_src2_b32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
161 ds_write_src2_b64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
162 ds_wrxchg2_rtn_b32 :ref:`vdst`::ref:`b32x2`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
163 ds_wrxchg2_rtn_b64 :ref:`vdst`::ref:`b64x2`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
164 ds_wrxchg2st64_rtn_b32 :ref:`vdst`::ref:`b32x2`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
165 ds_wrxchg2st64_rtn_b64 :ref:`vdst`::ref:`b64x2`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
166 ds_wrxchg_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
167 ds_wrxchg_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
168 ds_xor_b32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
169 ds_xor_b64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
170 ds_xor_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
171 ds_xor_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
172 ds_xor_src2_b32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
173 ds_xor_src2_b64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
174
175 EXP
176 -----------------------
177
178 .. parsed-literal::
179
180 **INSTRUCTION** **DST** **SRC0** **SRC1** **SRC2** **SRC3** **MODIFIERS**
181 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
182 exp :ref:`tgt`, :ref:`vsrc0`, :ref:`vsrc1`, :ref:`vsrc2`, :ref:`vsrc3` :ref:`done` :ref:`compr` :ref:`vm`
183
184 FLAT
185 -----------------------
186
187 .. parsed-literal::
188
189 **INSTRUCTION** **DST** **SRC0** **SRC1** **MODIFIERS**
190 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
191 flat_atomic_add :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
192 flat_atomic_add_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
193 flat_atomic_and :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
194 flat_atomic_and_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
195 flat_atomic_cmpswap :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata`::ref:`b32x2` :ref:`glc` :ref:`slc`
196 flat_atomic_cmpswap_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata`::ref:`b64x2` :ref:`glc` :ref:`slc`
197 flat_atomic_dec :ref:`vdst`::ref:`opt`::ref:`u32`, :ref:`vaddr`, :ref:`vdata`::ref:`u32` :ref:`glc` :ref:`slc`
198 flat_atomic_dec_x2 :ref:`vdst`::ref:`opt`::ref:`u64`, :ref:`vaddr`, :ref:`vdata`::ref:`u64` :ref:`glc` :ref:`slc`
199 flat_atomic_fcmpswap :ref:`vdst`::ref:`opt`::ref:`f32`, :ref:`vaddr`, :ref:`vdata`::ref:`f32x2` :ref:`glc` :ref:`slc`
200 flat_atomic_fcmpswap_x2 :ref:`vdst`::ref:`opt`::ref:`f64`, :ref:`vaddr`, :ref:`vdata`::ref:`f64x2` :ref:`glc` :ref:`slc`
201 flat_atomic_fmax :ref:`vdst`::ref:`opt`::ref:`f32`, :ref:`vaddr`, :ref:`vdata`::ref:`f32` :ref:`glc` :ref:`slc`
202 flat_atomic_fmax_x2 :ref:`vdst`::ref:`opt`::ref:`f64`, :ref:`vaddr`, :ref:`vdata`::ref:`f64` :ref:`glc` :ref:`slc`
203 flat_atomic_fmin :ref:`vdst`::ref:`opt`::ref:`f32`, :ref:`vaddr`, :ref:`vdata`::ref:`f32` :ref:`glc` :ref:`slc`
204 flat_atomic_fmin_x2 :ref:`vdst`::ref:`opt`::ref:`f64`, :ref:`vaddr`, :ref:`vdata`::ref:`f64` :ref:`glc` :ref:`slc`
205 flat_atomic_inc :ref:`vdst`::ref:`opt`::ref:`u32`, :ref:`vaddr`, :ref:`vdata`::ref:`u32` :ref:`glc` :ref:`slc`
206 flat_atomic_inc_x2 :ref:`vdst`::ref:`opt`::ref:`u64`, :ref:`vaddr`, :ref:`vdata`::ref:`u64` :ref:`glc` :ref:`slc`
207 flat_atomic_or :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
208 flat_atomic_or_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
209 flat_atomic_smax :ref:`vdst`::ref:`opt`::ref:`s32`, :ref:`vaddr`, :ref:`vdata`::ref:`s32` :ref:`glc` :ref:`slc`
210 flat_atomic_smax_x2 :ref:`vdst`::ref:`opt`::ref:`s64`, :ref:`vaddr`, :ref:`vdata`::ref:`s64` :ref:`glc` :ref:`slc`
211 flat_atomic_smin :ref:`vdst`::ref:`opt`::ref:`s32`, :ref:`vaddr`, :ref:`vdata`::ref:`s32` :ref:`glc` :ref:`slc`
212 flat_atomic_smin_x2 :ref:`vdst`::ref:`opt`::ref:`s64`, :ref:`vaddr`, :ref:`vdata`::ref:`s64` :ref:`glc` :ref:`slc`
213 flat_atomic_sub :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
214 flat_atomic_sub_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
215 flat_atomic_swap :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
216 flat_atomic_swap_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
217 flat_atomic_umax :ref:`vdst`::ref:`opt`::ref:`u32`, :ref:`vaddr`, :ref:`vdata`::ref:`u32` :ref:`glc` :ref:`slc`
218 flat_atomic_umax_x2 :ref:`vdst`::ref:`opt`::ref:`u64`, :ref:`vaddr`, :ref:`vdata`::ref:`u64` :ref:`glc` :ref:`slc`
219 flat_atomic_umin :ref:`vdst`::ref:`opt`::ref:`u32`, :ref:`vaddr`, :ref:`vdata`::ref:`u32` :ref:`glc` :ref:`slc`
220 flat_atomic_umin_x2 :ref:`vdst`::ref:`opt`::ref:`u64`, :ref:`vaddr`, :ref:`vdata`::ref:`u64` :ref:`glc` :ref:`slc`
221 flat_atomic_xor :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
222 flat_atomic_xor_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
223 flat_load_dword :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
224 flat_load_dwordx2 :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
225 flat_load_dwordx3 :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
226 flat_load_dwordx4 :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
227 flat_load_sbyte :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
228 flat_load_sshort :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
229 flat_load_ubyte :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
230 flat_load_ushort :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
231 flat_store_byte :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
232 flat_store_dword :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
233 flat_store_dwordx2 :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
234 flat_store_dwordx3 :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
235 flat_store_dwordx4 :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
236 flat_store_short :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
237
238 MIMG
239 -----------------------
240
241 .. parsed-literal::
242
243 **INSTRUCTION** **DST** **SRC0** **SRC1** **SRC2** **MODIFIERS**
244 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
245 image_atomic_add :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
246 image_atomic_and :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
247 image_atomic_cmpswap :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
248 image_atomic_dec :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
249 image_atomic_inc :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
250 image_atomic_or :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
251 image_atomic_smax :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
252 image_atomic_smin :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
253 image_atomic_sub :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
254 image_atomic_swap :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
255 image_atomic_umax :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
256 image_atomic_umin :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
257 image_atomic_xor :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
258 image_gather4 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
259 image_gather4_b :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
260 image_gather4_b_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
261 image_gather4_b_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
262 image_gather4_b_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
263 image_gather4_c :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
264 image_gather4_c_b :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
265 image_gather4_c_b_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
266 image_gather4_c_b_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
267 image_gather4_c_b_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
268 image_gather4_c_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
269 image_gather4_c_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
270 image_gather4_c_l :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
271 image_gather4_c_l_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
272 image_gather4_c_lz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
273 image_gather4_c_lz_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
274 image_gather4_c_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
275 image_gather4_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
276 image_gather4_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
277 image_gather4_l :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
278 image_gather4_l_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
279 image_gather4_lz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
280 image_gather4_lz_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
281 image_gather4_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
282 image_get_lod :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
283 image_get_resinfo :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
284 image_load :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
285 image_load_mip :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
286 image_load_mip_pck :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
287 image_load_mip_pck_sgn :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
288 image_load_pck :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
289 image_load_pck_sgn :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
290 image_sample :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
291 image_sample_b :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
292 image_sample_b_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
293 image_sample_b_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
294 image_sample_b_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
295 image_sample_c :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
296 image_sample_c_b :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
297 image_sample_c_b_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
298 image_sample_c_b_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
299 image_sample_c_b_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
300 image_sample_c_cd :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
301 image_sample_c_cd_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
302 image_sample_c_cd_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
303 image_sample_c_cd_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
304 image_sample_c_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
305 image_sample_c_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
306 image_sample_c_d :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
307 image_sample_c_d_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
308 image_sample_c_d_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
309 image_sample_c_d_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
310 image_sample_c_l :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
311 image_sample_c_l_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
312 image_sample_c_lz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
313 image_sample_c_lz_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
314 image_sample_c_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
315 image_sample_cd :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
316 image_sample_cd_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
317 image_sample_cd_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
318 image_sample_cd_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
319 image_sample_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
320 image_sample_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
321 image_sample_d :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
322 image_sample_d_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
323 image_sample_d_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
324 image_sample_d_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
325 image_sample_l :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
326 image_sample_l_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
327 image_sample_lz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
328 image_sample_lz_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
329 image_sample_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
330 image_store :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
331 image_store_mip :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
332 image_store_mip_pck :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
333 image_store_pck :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
334
335 MUBUF
336 -----------------------
337
338 .. parsed-literal::
339
340 **INSTRUCTION** **DST** **SRC0** **SRC1** **SRC2** **SRC3** **MODIFIERS**
341 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
342 buffer_atomic_add :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
343 buffer_atomic_add_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
344 buffer_atomic_and :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
345 buffer_atomic_and_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
346 buffer_atomic_cmpswap :ref:`vdata`::ref:`dst`::ref:`b32x2`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
347 buffer_atomic_cmpswap_x2 :ref:`vdata`::ref:`dst`::ref:`b64x2`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
348 buffer_atomic_dec :ref:`vdata`::ref:`dst`::ref:`u32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
349 buffer_atomic_dec_x2 :ref:`vdata`::ref:`dst`::ref:`u64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
350 buffer_atomic_inc :ref:`vdata`::ref:`dst`::ref:`u32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
351 buffer_atomic_inc_x2 :ref:`vdata`::ref:`dst`::ref:`u64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
352 buffer_atomic_or :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
353 buffer_atomic_or_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
354 buffer_atomic_smax :ref:`vdata`::ref:`dst`::ref:`s32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
355 buffer_atomic_smax_x2 :ref:`vdata`::ref:`dst`::ref:`s64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
356 buffer_atomic_smin :ref:`vdata`::ref:`dst`::ref:`s32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
357 buffer_atomic_smin_x2 :ref:`vdata`::ref:`dst`::ref:`s64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
358 buffer_atomic_sub :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
359 buffer_atomic_sub_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
360 buffer_atomic_swap :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
361 buffer_atomic_swap_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
362 buffer_atomic_umax :ref:`vdata`::ref:`dst`::ref:`u32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
363 buffer_atomic_umax_x2 :ref:`vdata`::ref:`dst`::ref:`u64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
364 buffer_atomic_umin :ref:`vdata`::ref:`dst`::ref:`u32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
365 buffer_atomic_umin_x2 :ref:`vdata`::ref:`dst`::ref:`u64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
366 buffer_atomic_xor :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
367 buffer_atomic_xor_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
368 buffer_load_dword :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
369 buffer_load_dwordx2 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
370 buffer_load_dwordx3 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
371 buffer_load_dwordx4 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
372 buffer_load_format_x :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
373 buffer_load_format_xy :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
374 buffer_load_format_xyz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
375 buffer_load_format_xyzw :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
376 buffer_load_sbyte :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
377 buffer_load_sshort :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
378 buffer_load_ubyte :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
379 buffer_load_ushort :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
380 buffer_store_byte :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
381 buffer_store_dword :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
382 buffer_store_dwordx2 :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
383 buffer_store_dwordx3 :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
384 buffer_store_dwordx4 :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
385 buffer_store_format_x :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
386 buffer_store_format_xy :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
387 buffer_store_format_xyz :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
388 buffer_store_format_xyzw :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
389 buffer_store_short :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`addr64` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
390 buffer_wbinvl1
391 buffer_wbinvl1_vol
392
393 SMRD
394 -----------------------
395
396 .. parsed-literal::
397
398 **INSTRUCTION** **DST** **SRC0** **SRC1**
399 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
400 s_buffer_load_dword :ref:`sdst`, :ref:`sbase`, :ref:`soffset`
401 s_buffer_load_dwordx16 :ref:`sdst`, :ref:`sbase`, :ref:`soffset`
402 s_buffer_load_dwordx2 :ref:`sdst`, :ref:`sbase`, :ref:`soffset`
403 s_buffer_load_dwordx4 :ref:`sdst`, :ref:`sbase`, :ref:`soffset`
404 s_buffer_load_dwordx8 :ref:`sdst`, :ref:`sbase`, :ref:`soffset`
405 s_dcache_inv
406 s_dcache_inv_vol
407 s_load_dword :ref:`sdst`, :ref:`sbase`, :ref:`soffset`
408 s_load_dwordx16 :ref:`sdst`, :ref:`sbase`, :ref:`soffset`
409 s_load_dwordx2 :ref:`sdst`, :ref:`sbase`, :ref:`soffset`
410 s_load_dwordx4 :ref:`sdst`, :ref:`sbase`, :ref:`soffset`
411 s_load_dwordx8 :ref:`sdst`, :ref:`sbase`, :ref:`soffset`
412 s_memtime :ref:`sdst`
413
414 SOP1
415 -----------------------
416
417 .. parsed-literal::
418
419 **INSTRUCTION** **DST** **SRC**
420 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
421 s_abs_i32 :ref:`sdst`, :ref:`ssrc`
422 s_and_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
423 s_andn2_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
424 s_bcnt0_i32_b32 :ref:`sdst`, :ref:`ssrc`
425 s_bcnt0_i32_b64 :ref:`sdst`, :ref:`ssrc`
426 s_bcnt1_i32_b32 :ref:`sdst`, :ref:`ssrc`
427 s_bcnt1_i32_b64 :ref:`sdst`, :ref:`ssrc`
428 s_bitset0_b32 :ref:`sdst`, :ref:`ssrc`
429 s_bitset0_b64 :ref:`sdst`, :ref:`ssrc`::ref:`b32`
430 s_bitset1_b32 :ref:`sdst`, :ref:`ssrc`
431 s_bitset1_b64 :ref:`sdst`, :ref:`ssrc`::ref:`b32`
432 s_brev_b32 :ref:`sdst`, :ref:`ssrc`
433 s_brev_b64 :ref:`sdst`, :ref:`ssrc`
434 s_cbranch_join :ref:`ssrc`
435 s_cmov_b32 :ref:`sdst`, :ref:`ssrc`
436 s_cmov_b64 :ref:`sdst`, :ref:`ssrc`
437 s_ff0_i32_b32 :ref:`sdst`, :ref:`ssrc`
438 s_ff0_i32_b64 :ref:`sdst`, :ref:`ssrc`
439 s_ff1_i32_b32 :ref:`sdst`, :ref:`ssrc`
440 s_ff1_i32_b64 :ref:`sdst`, :ref:`ssrc`
441 s_flbit_i32 :ref:`sdst`, :ref:`ssrc`
442 s_flbit_i32_b32 :ref:`sdst`, :ref:`ssrc`
443 s_flbit_i32_b64 :ref:`sdst`, :ref:`ssrc`
444 s_flbit_i32_i64 :ref:`sdst`, :ref:`ssrc`
445 s_getpc_b64 :ref:`sdst`
446 s_mov_b32 :ref:`sdst`, :ref:`ssrc`
447 s_mov_b64 :ref:`sdst`, :ref:`ssrc`
448 s_mov_fed_b32 :ref:`sdst`, :ref:`ssrc`
449 s_movreld_b32 :ref:`sdst`, :ref:`ssrc`
450 s_movreld_b64 :ref:`sdst`, :ref:`ssrc`
451 s_movrels_b32 :ref:`sdst`, :ref:`ssrc`
452 s_movrels_b64 :ref:`sdst`, :ref:`ssrc`
453 s_nand_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
454 s_nor_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
455 s_not_b32 :ref:`sdst`, :ref:`ssrc`
456 s_not_b64 :ref:`sdst`, :ref:`ssrc`
457 s_or_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
458 s_orn2_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
459 s_quadmask_b32 :ref:`sdst`, :ref:`ssrc`
460 s_quadmask_b64 :ref:`sdst`, :ref:`ssrc`
461 s_rfe_b64 :ref:`ssrc`
462 s_setpc_b64 :ref:`ssrc`
463 s_sext_i32_i16 :ref:`sdst`, :ref:`ssrc`
464 s_sext_i32_i8 :ref:`sdst`, :ref:`ssrc`
465 s_swappc_b64 :ref:`sdst`, :ref:`ssrc`
466 s_wqm_b32 :ref:`sdst`, :ref:`ssrc`
467 s_wqm_b64 :ref:`sdst`, :ref:`ssrc`
468 s_xnor_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
469 s_xor_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
470
471 SOP2
472 -----------------------
473
474 .. parsed-literal::
475
476 **INSTRUCTION** **DST** **SRC0** **SRC1**
477 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
478 s_absdiff_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
479 s_add_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
480 s_add_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
481 s_addc_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
482 s_and_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
483 s_and_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
484 s_andn2_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
485 s_andn2_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
486 s_ashr_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
487 s_ashr_i64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
488 s_bfe_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
489 s_bfe_i64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
490 s_bfe_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
491 s_bfe_u64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
492 s_bfm_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
493 s_bfm_b64 :ref:`sdst`, :ref:`ssrc0`::ref:`b32`, :ref:`ssrc1`::ref:`b32`
494 s_cbranch_g_fork :ref:`ssrc0`, :ref:`ssrc1`
495 s_cselect_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
496 s_cselect_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
497 s_lshl_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
498 s_lshl_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
499 s_lshr_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
500 s_lshr_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
501 s_max_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
502 s_max_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
503 s_min_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
504 s_min_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
505 s_mul_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
506 s_nand_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
507 s_nand_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
508 s_nor_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
509 s_nor_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
510 s_or_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
511 s_or_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
512 s_orn2_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
513 s_orn2_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
514 s_sub_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
515 s_sub_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
516 s_subb_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
517 s_xnor_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
518 s_xnor_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
519 s_xor_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
520 s_xor_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
521
522 SOPC
523 -----------------------
524
525 .. parsed-literal::
526
527 **INSTRUCTION** **SRC0** **SRC1**
528 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
529 s_bitcmp0_b32 :ref:`ssrc0`, :ref:`ssrc1`
530 s_bitcmp0_b64 :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
531 s_bitcmp1_b32 :ref:`ssrc0`, :ref:`ssrc1`
532 s_bitcmp1_b64 :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
533 s_cmp_eq_i32 :ref:`ssrc0`, :ref:`ssrc1`
534 s_cmp_eq_u32 :ref:`ssrc0`, :ref:`ssrc1`
535 s_cmp_ge_i32 :ref:`ssrc0`, :ref:`ssrc1`
536 s_cmp_ge_u32 :ref:`ssrc0`, :ref:`ssrc1`
537 s_cmp_gt_i32 :ref:`ssrc0`, :ref:`ssrc1`
538 s_cmp_gt_u32 :ref:`ssrc0`, :ref:`ssrc1`
539 s_cmp_le_i32 :ref:`ssrc0`, :ref:`ssrc1`
540 s_cmp_le_u32 :ref:`ssrc0`, :ref:`ssrc1`
541 s_cmp_lg_i32 :ref:`ssrc0`, :ref:`ssrc1`
542 s_cmp_lg_u32 :ref:`ssrc0`, :ref:`ssrc1`
543 s_cmp_lt_i32 :ref:`ssrc0`, :ref:`ssrc1`
544 s_cmp_lt_u32 :ref:`ssrc0`, :ref:`ssrc1`
545 s_setvskip :ref:`ssrc0`, :ref:`ssrc1`
546
547 SOPK
548 -----------------------
549
550 .. parsed-literal::
551
552 **INSTRUCTION** **DST** **SRC0** **SRC1**
553 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
554 s_addk_i32 :ref:`sdst`, :ref:`imm16`
555 s_cbranch_i_fork :ref:`ssrc`, :ref:`label`
556 s_cmovk_i32 :ref:`sdst`, :ref:`imm16`
557 s_cmpk_eq_i32 :ref:`ssrc`, :ref:`imm16`
558 s_cmpk_eq_u32 :ref:`ssrc`, :ref:`imm16`
559 s_cmpk_ge_i32 :ref:`ssrc`, :ref:`imm16`
560 s_cmpk_ge_u32 :ref:`ssrc`, :ref:`imm16`
561 s_cmpk_gt_i32 :ref:`ssrc`, :ref:`imm16`
562 s_cmpk_gt_u32 :ref:`ssrc`, :ref:`imm16`
563 s_cmpk_le_i32 :ref:`ssrc`, :ref:`imm16`
564 s_cmpk_le_u32 :ref:`ssrc`, :ref:`imm16`
565 s_cmpk_lg_i32 :ref:`ssrc`, :ref:`imm16`
566 s_cmpk_lg_u32 :ref:`ssrc`, :ref:`imm16`
567 s_cmpk_lt_i32 :ref:`ssrc`, :ref:`imm16`
568 s_cmpk_lt_u32 :ref:`ssrc`, :ref:`imm16`
569 s_getreg_b32 :ref:`sdst`, :ref:`hwreg`
570 s_movk_i32 :ref:`sdst`, :ref:`imm16`
571 s_mulk_i32 :ref:`sdst`, :ref:`imm16`
572 s_setreg_b32 :ref:`hwreg`, :ref:`ssrc`
573 s_setreg_imm32_b32 :ref:`hwreg`, :ref:`imm32`
574
575 SOPP
576 -----------------------
577
578 .. parsed-literal::
579
580 **INSTRUCTION** **SRC**
581 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
582 s_barrier
583 s_branch :ref:`label`
584 s_cbranch_cdbgsys :ref:`label`
585 s_cbranch_cdbgsys_and_user :ref:`label`
586 s_cbranch_cdbgsys_or_user :ref:`label`
587 s_cbranch_cdbguser :ref:`label`
588 s_cbranch_execnz :ref:`label`
589 s_cbranch_execz :ref:`label`
590 s_cbranch_scc0 :ref:`label`
591 s_cbranch_scc1 :ref:`label`
592 s_cbranch_vccnz :ref:`label`
593 s_cbranch_vccz :ref:`label`
594 s_decperflevel :ref:`imm16`
595 s_endpgm
596 s_icache_inv
597 s_incperflevel :ref:`imm16`
598 s_nop :ref:`imm16`
599 s_sendmsg :ref:`msg`
600 s_sendmsghalt :ref:`msg`
601 s_sethalt :ref:`imm16`
602 s_setkill :ref:`imm16`
603 s_setprio :ref:`imm16`
604 s_sleep :ref:`imm16`
605 s_trap :ref:`imm16`
606 s_ttracedata
607 s_waitcnt :ref:`waitcnt`
608
609 VINTRP
610 -----------------------
611
612 .. parsed-literal::
613
614 **INSTRUCTION** **DST** **SRC0** **SRC1**
615 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
616 v_interp_mov_f32 :ref:`vdst`, :ref:`param`::ref:`b32`, :ref:`attr`::ref:`b32`
617 v_interp_p1_f32 :ref:`vdst`, :ref:`vsrc`, :ref:`attr`::ref:`b32`
618 v_interp_p2_f32 :ref:`vdst`, :ref:`vsrc`, :ref:`attr`::ref:`b32`
619
620 VOP1
621 -----------------------
622
623 .. parsed-literal::
624
625 **INSTRUCTION** **DST** **SRC**
626 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
627 v_bfrev_b32 :ref:`vdst`, :ref:`src`
628 v_ceil_f32 :ref:`vdst`, :ref:`src`
629 v_ceil_f64 :ref:`vdst`, :ref:`src`
630 v_clrexcp
631 v_cos_f32 :ref:`vdst`, :ref:`src`
632 v_cvt_f16_f32 :ref:`vdst`, :ref:`src`
633 v_cvt_f32_f16 :ref:`vdst`, :ref:`src`
634 v_cvt_f32_f64 :ref:`vdst`, :ref:`src`
635 v_cvt_f32_i32 :ref:`vdst`, :ref:`src`
636 v_cvt_f32_u32 :ref:`vdst`, :ref:`src`
637 v_cvt_f32_ubyte0 :ref:`vdst`, :ref:`src`
638 v_cvt_f32_ubyte1 :ref:`vdst`, :ref:`src`
639 v_cvt_f32_ubyte2 :ref:`vdst`, :ref:`src`
640 v_cvt_f32_ubyte3 :ref:`vdst`, :ref:`src`
641 v_cvt_f64_f32 :ref:`vdst`, :ref:`src`
642 v_cvt_f64_i32 :ref:`vdst`, :ref:`src`
643 v_cvt_f64_u32 :ref:`vdst`, :ref:`src`
644 v_cvt_flr_i32_f32 :ref:`vdst`, :ref:`src`
645 v_cvt_i32_f32 :ref:`vdst`, :ref:`src`
646 v_cvt_i32_f64 :ref:`vdst`, :ref:`src`
647 v_cvt_off_f32_i4 :ref:`vdst`, :ref:`src`
648 v_cvt_rpi_i32_f32 :ref:`vdst`, :ref:`src`
649 v_cvt_u32_f32 :ref:`vdst`, :ref:`src`
650 v_cvt_u32_f64 :ref:`vdst`, :ref:`src`
651 v_exp_f32 :ref:`vdst`, :ref:`src`
652 v_exp_legacy_f32 :ref:`vdst`, :ref:`src`
653 v_ffbh_i32 :ref:`vdst`, :ref:`src`
654 v_ffbh_u32 :ref:`vdst`, :ref:`src`
655 v_ffbl_b32 :ref:`vdst`, :ref:`src`
656 v_floor_f32 :ref:`vdst`, :ref:`src`
657 v_floor_f64 :ref:`vdst`, :ref:`src`
658 v_fract_f32 :ref:`vdst`, :ref:`src`
659 v_fract_f64 :ref:`vdst`, :ref:`src`
660 v_frexp_exp_i32_f32 :ref:`vdst`, :ref:`src`
661 v_frexp_exp_i32_f64 :ref:`vdst`, :ref:`src`
662 v_frexp_mant_f32 :ref:`vdst`, :ref:`src`
663 v_frexp_mant_f64 :ref:`vdst`, :ref:`src`
664 v_log_clamp_f32 :ref:`vdst`, :ref:`src`
665 v_log_f32 :ref:`vdst`, :ref:`src`
666 v_log_legacy_f32 :ref:`vdst`, :ref:`src`
667 v_mov_b32 :ref:`vdst`, :ref:`src`
668 v_mov_fed_b32 :ref:`vdst`, :ref:`src`
669 v_movreld_b32 :ref:`vdst`, :ref:`src`
670 v_movrels_b32 :ref:`vdst`, :ref:`vsrc`
671 v_movrelsd_b32 :ref:`vdst`, :ref:`vsrc`
672 v_nop
673 v_not_b32 :ref:`vdst`, :ref:`src`
674 v_rcp_clamp_f32 :ref:`vdst`, :ref:`src`
675 v_rcp_clamp_f64 :ref:`vdst`, :ref:`src`
676 v_rcp_f32 :ref:`vdst`, :ref:`src`
677 v_rcp_f64 :ref:`vdst`, :ref:`src`
678 v_rcp_iflag_f32 :ref:`vdst`, :ref:`src`
679 v_rcp_legacy_f32 :ref:`vdst`, :ref:`src`
680 v_readfirstlane_b32 :ref:`sdst`, :ref:`vsrc`
681 v_rndne_f32 :ref:`vdst`, :ref:`src`
682 v_rndne_f64 :ref:`vdst`, :ref:`src`
683 v_rsq_clamp_f32 :ref:`vdst`, :ref:`src`
684 v_rsq_clamp_f64 :ref:`vdst`, :ref:`src`
685 v_rsq_f32 :ref:`vdst`, :ref:`src`
686 v_rsq_f64 :ref:`vdst`, :ref:`src`
687 v_rsq_legacy_f32 :ref:`vdst`, :ref:`src`
688 v_sin_f32 :ref:`vdst`, :ref:`src`
689 v_sqrt_f32 :ref:`vdst`, :ref:`src`
690 v_sqrt_f64 :ref:`vdst`, :ref:`src`
691 v_trunc_f32 :ref:`vdst`, :ref:`src`
692 v_trunc_f64 :ref:`vdst`, :ref:`src`
693
694 VOP2
695 -----------------------
696
697 .. parsed-literal::
698
699 **INSTRUCTION** **DST0** **DST1** **SRC0** **SRC1** **SRC2**
700 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
701 v_add_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
702 v_add_i32 :ref:`vdst`, :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
703 v_addc_u32 :ref:`vdst`, :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`, :ref:`vcc`
704 v_and_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
705 v_ashr_i32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`::ref:`u32`
706 v_ashrrev_i32 :ref:`vdst`, :ref:`src0`::ref:`u32`, :ref:`vsrc1`
707 v_bcnt_u32_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
708 v_bfm_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
709 v_cndmask_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`, :ref:`vcc`
710 v_cvt_pk_i16_i32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
711 v_cvt_pk_u16_u32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
712 v_cvt_pkaccum_u8_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`::ref:`u32`
713 v_cvt_pknorm_i16_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
714 v_cvt_pknorm_u16_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
715 v_cvt_pkrtz_f16_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
716 v_ldexp_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`::ref:`i32`
717 v_lshl_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`::ref:`u32`
718 v_lshlrev_b32 :ref:`vdst`, :ref:`src0`::ref:`u32`, :ref:`vsrc1`
719 v_lshr_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`::ref:`u32`
720 v_lshrrev_b32 :ref:`vdst`, :ref:`src0`::ref:`u32`, :ref:`vsrc1`
721 v_mac_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
722 v_mac_legacy_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
723 v_madak_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`, :ref:`imm32`
724 v_madmk_f32 :ref:`vdst`, :ref:`src0`, :ref:`imm32`, :ref:`vsrc2`
725 v_max_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
726 v_max_i32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
727 v_max_legacy_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
728 v_max_u32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
729 v_mbcnt_hi_u32_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
730 v_mbcnt_lo_u32_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
731 v_min_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
732 v_min_i32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
733 v_min_legacy_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
734 v_min_u32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
735 v_mul_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
736 v_mul_hi_i32_i24 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
737 v_mul_hi_u32_u24 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
738 v_mul_i32_i24 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
739 v_mul_legacy_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
740 v_mul_u32_u24 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
741 v_or_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
742 v_readlane_b32 :ref:`sdst`, :ref:`vsrc0`, :ref:`ssrc1`
743 v_sub_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
744 v_sub_i32 :ref:`vdst`, :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
745 v_subb_u32 :ref:`vdst`, :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`, :ref:`vcc`
746 v_subbrev_u32 :ref:`vdst`, :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`, :ref:`vcc`
747 v_subrev_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
748 v_subrev_i32 :ref:`vdst`, :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
749 v_writelane_b32 :ref:`vdst`, :ref:`ssrc0`, :ref:`ssrc1`
750 v_xor_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
751
752 VOP3
753 -----------------------
754
755 .. parsed-literal::
756
757 **INSTRUCTION** **DST0** **DST1** **SRC0** **SRC1** **SRC2** **MODIFIERS**
758 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
759 v_add_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
760 v_add_f64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
761 v_add_i32_e64 :ref:`vdst`, :ref:`sdst`, :ref:`src0`, :ref:`src1`
762 v_addc_u32_e64 :ref:`vdst`, :ref:`sdst`, :ref:`src0`, :ref:`src1`, :ref:`ssrc2`
763 v_alignbit_b32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
764 v_alignbyte_b32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
765 v_and_b32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
766 v_ashr_i32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`::ref:`u32`
767 v_ashr_i64 :ref:`vdst`, :ref:`src0`, :ref:`src1`::ref:`u32`
768 v_ashrrev_i32_e64 :ref:`vdst`, :ref:`src0`::ref:`u32`, :ref:`src1`
769 v_bcnt_u32_b32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
770 v_bfe_i32 :ref:`vdst`, :ref:`src0`, :ref:`src1`::ref:`u32`, :ref:`src2`::ref:`u32`
771 v_bfe_u32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
772 v_bfi_b32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
773 v_bfm_b32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
774 v_bfrev_b32_e64 :ref:`vdst`, :ref:`src`
775 v_ceil_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
776 v_ceil_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
777 v_clrexcp_e64
778 v_cmp_class_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`b32`
779 v_cmp_class_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`b32`
780 v_cmp_eq_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
781 v_cmp_eq_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
782 v_cmp_eq_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
783 v_cmp_eq_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
784 v_cmp_eq_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
785 v_cmp_eq_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
786 v_cmp_f_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
787 v_cmp_f_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
788 v_cmp_f_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
789 v_cmp_f_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
790 v_cmp_f_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
791 v_cmp_f_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
792 v_cmp_ge_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
793 v_cmp_ge_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
794 v_cmp_ge_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
795 v_cmp_ge_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
796 v_cmp_ge_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
797 v_cmp_ge_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
798 v_cmp_gt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
799 v_cmp_gt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
800 v_cmp_gt_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
801 v_cmp_gt_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
802 v_cmp_gt_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
803 v_cmp_gt_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
804 v_cmp_le_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
805 v_cmp_le_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
806 v_cmp_le_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
807 v_cmp_le_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
808 v_cmp_le_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
809 v_cmp_le_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
810 v_cmp_lg_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
811 v_cmp_lg_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
812 v_cmp_lt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
813 v_cmp_lt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
814 v_cmp_lt_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
815 v_cmp_lt_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
816 v_cmp_lt_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
817 v_cmp_lt_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
818 v_cmp_ne_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
819 v_cmp_ne_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
820 v_cmp_ne_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
821 v_cmp_ne_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
822 v_cmp_neq_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
823 v_cmp_neq_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
824 v_cmp_nge_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
825 v_cmp_nge_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
826 v_cmp_ngt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
827 v_cmp_ngt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
828 v_cmp_nle_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
829 v_cmp_nle_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
830 v_cmp_nlg_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
831 v_cmp_nlg_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
832 v_cmp_nlt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
833 v_cmp_nlt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
834 v_cmp_o_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
835 v_cmp_o_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
836 v_cmp_t_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
837 v_cmp_t_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
838 v_cmp_t_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
839 v_cmp_t_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
840 v_cmp_tru_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
841 v_cmp_tru_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
842 v_cmp_u_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
843 v_cmp_u_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
844 v_cmps_eq_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
845 v_cmps_eq_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
846 v_cmps_f_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
847 v_cmps_f_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
848 v_cmps_ge_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
849 v_cmps_ge_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
850 v_cmps_gt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
851 v_cmps_gt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
852 v_cmps_le_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
853 v_cmps_le_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
854 v_cmps_lg_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
855 v_cmps_lg_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
856 v_cmps_lt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
857 v_cmps_lt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
858 v_cmps_neq_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
859 v_cmps_neq_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
860 v_cmps_nge_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
861 v_cmps_nge_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
862 v_cmps_ngt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
863 v_cmps_ngt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
864 v_cmps_nle_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
865 v_cmps_nle_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
866 v_cmps_nlg_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
867 v_cmps_nlg_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
868 v_cmps_nlt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
869 v_cmps_nlt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
870 v_cmps_o_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
871 v_cmps_o_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
872 v_cmps_tru_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
873 v_cmps_tru_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
874 v_cmps_u_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
875 v_cmps_u_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
876 v_cmpsx_eq_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
877 v_cmpsx_eq_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
878 v_cmpsx_f_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
879 v_cmpsx_f_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
880 v_cmpsx_ge_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
881 v_cmpsx_ge_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
882 v_cmpsx_gt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
883 v_cmpsx_gt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
884 v_cmpsx_le_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
885 v_cmpsx_le_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
886 v_cmpsx_lg_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
887 v_cmpsx_lg_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
888 v_cmpsx_lt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
889 v_cmpsx_lt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
890 v_cmpsx_neq_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
891 v_cmpsx_neq_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
892 v_cmpsx_nge_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
893 v_cmpsx_nge_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
894 v_cmpsx_ngt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
895 v_cmpsx_ngt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
896 v_cmpsx_nle_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
897 v_cmpsx_nle_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
898 v_cmpsx_nlg_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
899 v_cmpsx_nlg_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
900 v_cmpsx_nlt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
901 v_cmpsx_nlt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
902 v_cmpsx_o_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
903 v_cmpsx_o_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
904 v_cmpsx_tru_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
905 v_cmpsx_tru_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
906 v_cmpsx_u_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
907 v_cmpsx_u_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
908 v_cmpx_class_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`b32`
909 v_cmpx_class_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`b32`
910 v_cmpx_eq_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
911 v_cmpx_eq_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
912 v_cmpx_eq_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
913 v_cmpx_eq_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
914 v_cmpx_eq_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
915 v_cmpx_eq_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
916 v_cmpx_f_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
917 v_cmpx_f_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
918 v_cmpx_f_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
919 v_cmpx_f_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
920 v_cmpx_f_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
921 v_cmpx_f_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
922 v_cmpx_ge_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
923 v_cmpx_ge_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
924 v_cmpx_ge_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
925 v_cmpx_ge_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
926 v_cmpx_ge_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
927 v_cmpx_ge_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
928 v_cmpx_gt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
929 v_cmpx_gt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
930 v_cmpx_gt_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
931 v_cmpx_gt_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
932 v_cmpx_gt_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
933 v_cmpx_gt_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
934 v_cmpx_le_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
935 v_cmpx_le_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
936 v_cmpx_le_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
937 v_cmpx_le_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
938 v_cmpx_le_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
939 v_cmpx_le_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
940 v_cmpx_lg_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
941 v_cmpx_lg_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
942 v_cmpx_lt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
943 v_cmpx_lt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
944 v_cmpx_lt_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
945 v_cmpx_lt_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
946 v_cmpx_lt_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
947 v_cmpx_lt_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
948 v_cmpx_ne_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
949 v_cmpx_ne_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
950 v_cmpx_ne_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
951 v_cmpx_ne_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
952 v_cmpx_neq_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
953 v_cmpx_neq_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
954 v_cmpx_nge_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
955 v_cmpx_nge_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
956 v_cmpx_ngt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
957 v_cmpx_ngt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
958 v_cmpx_nle_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
959 v_cmpx_nle_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
960 v_cmpx_nlg_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
961 v_cmpx_nlg_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
962 v_cmpx_nlt_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
963 v_cmpx_nlt_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
964 v_cmpx_o_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
965 v_cmpx_o_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
966 v_cmpx_t_i32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
967 v_cmpx_t_i64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
968 v_cmpx_t_u32_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
969 v_cmpx_t_u64_e64 :ref:`sdst`, :ref:`src0`, :ref:`src1`
970 v_cmpx_tru_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
971 v_cmpx_tru_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
972 v_cmpx_u_f32_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
973 v_cmpx_u_f64_e64 :ref:`sdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
974 v_cndmask_b32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`ssrc2`
975 v_cos_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
976 v_cubeid_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
977 v_cubema_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
978 v_cubesc_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
979 v_cubetc_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
980 v_cvt_f16_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m`
981 v_cvt_f32_f16_e64 :ref:`vdst`, :ref:`src` :ref:`clamp` :ref:`omod`
982 v_cvt_f32_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
983 v_cvt_f32_i32_e64 :ref:`vdst`, :ref:`src` :ref:`clamp` :ref:`omod`
984 v_cvt_f32_u32_e64 :ref:`vdst`, :ref:`src` :ref:`clamp` :ref:`omod`
985 v_cvt_f32_ubyte0_e64 :ref:`vdst`, :ref:`src`
986 v_cvt_f32_ubyte1_e64 :ref:`vdst`, :ref:`src`
987 v_cvt_f32_ubyte2_e64 :ref:`vdst`, :ref:`src`
988 v_cvt_f32_ubyte3_e64 :ref:`vdst`, :ref:`src`
989 v_cvt_f64_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
990 v_cvt_f64_i32_e64 :ref:`vdst`, :ref:`src` :ref:`clamp` :ref:`omod`
991 v_cvt_f64_u32_e64 :ref:`vdst`, :ref:`src` :ref:`clamp` :ref:`omod`
992 v_cvt_flr_i32_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m`
993 v_cvt_i32_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m`
994 v_cvt_i32_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m`
995 v_cvt_off_f32_i4_e64 :ref:`vdst`, :ref:`src` :ref:`clamp` :ref:`omod`
996 v_cvt_pk_i16_i32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
997 v_cvt_pk_u16_u32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
998 v_cvt_pk_u8_f32 :ref:`vdst`, :ref:`src0`, :ref:`src1`::ref:`u32`, :ref:`src2`::ref:`u32`
999 v_cvt_pkaccum_u8_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`u32`
1000 v_cvt_pknorm_i16_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
1001 v_cvt_pknorm_u16_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
1002 v_cvt_pkrtz_f16_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`
1003 v_cvt_rpi_i32_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m`
1004 v_cvt_u32_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m`
1005 v_cvt_u32_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m`
1006 v_div_fixup_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1007 v_div_fixup_f64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1008 v_div_fmas_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1009 v_div_fmas_f64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1010 v_div_scale_f32 :ref:`vdst`, :ref:`vcc`, :ref:`src0`, :ref:`src1`, :ref:`src2`
1011 v_div_scale_f64 :ref:`vdst`, :ref:`vcc`, :ref:`src0`, :ref:`src1`, :ref:`src2`
1012 v_exp_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1013 v_exp_legacy_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1014 v_ffbh_i32_e64 :ref:`vdst`, :ref:`src`
1015 v_ffbh_u32_e64 :ref:`vdst`, :ref:`src`
1016 v_ffbl_b32_e64 :ref:`vdst`, :ref:`src`
1017 v_floor_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1018 v_floor_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1019 v_fma_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1020 v_fma_f64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1021 v_fract_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1022 v_fract_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1023 v_frexp_exp_i32_f32_e64 :ref:`vdst`, :ref:`src`
1024 v_frexp_exp_i32_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m`
1025 v_frexp_mant_f32_e64 :ref:`vdst`, :ref:`src`
1026 v_frexp_mant_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1027 v_ldexp_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`i32` :ref:`clamp` :ref:`omod`
1028 v_ldexp_f64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`i32` :ref:`clamp` :ref:`omod`
1029 v_lerp_u8 :ref:`vdst`::ref:`u32`, :ref:`src0`::ref:`b32`, :ref:`src1`::ref:`b32`, :ref:`src2`::ref:`b32`
1030 v_log_clamp_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1031 v_log_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1032 v_log_legacy_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1033 v_lshl_b32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`::ref:`u32`
1034 v_lshl_b64 :ref:`vdst`, :ref:`src0`, :ref:`src1`::ref:`u32`
1035 v_lshlrev_b32_e64 :ref:`vdst`, :ref:`src0`::ref:`u32`, :ref:`src1`
1036 v_lshr_b32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`::ref:`u32`
1037 v_lshr_b64 :ref:`vdst`, :ref:`src0`, :ref:`src1`::ref:`u32`
1038 v_lshrrev_b32_e64 :ref:`vdst`, :ref:`src0`::ref:`u32`, :ref:`src1`
1039 v_mac_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1040 v_mac_legacy_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1041 v_mad_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1042 v_mad_i32_i24 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`::ref:`i32`
1043 v_mad_i64_i32 :ref:`vdst`, :ref:`sdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`::ref:`i64`
1044 v_mad_legacy_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1045 v_mad_u32_u24 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`::ref:`u32`
1046 v_mad_u64_u32 :ref:`vdst`, :ref:`sdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`::ref:`u64`
1047 v_max3_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1048 v_max3_i32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
1049 v_max3_u32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
1050 v_max_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1051 v_max_f64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1052 v_max_i32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1053 v_max_legacy_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1054 v_max_u32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1055 v_mbcnt_hi_u32_b32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1056 v_mbcnt_lo_u32_b32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1057 v_med3_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1058 v_med3_i32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
1059 v_med3_u32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
1060 v_min3_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1061 v_min3_i32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
1062 v_min3_u32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
1063 v_min_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1064 v_min_f64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1065 v_min_i32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1066 v_min_legacy_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1067 v_min_u32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1068 v_mov_b32_e64 :ref:`vdst`, :ref:`src`
1069 v_mov_fed_b32_e64 :ref:`vdst`, :ref:`src`
1070 v_movreld_b32_e64 :ref:`vdst`, :ref:`src`
1071 v_movrels_b32_e64 :ref:`vdst`, :ref:`vsrc`
1072 v_movrelsd_b32_e64 :ref:`vdst`, :ref:`vsrc`
1073 v_mqsad_pk_u16_u8 :ref:`vdst`::ref:`b64`, :ref:`src0`::ref:`b64`, :ref:`src1`::ref:`b32`, :ref:`src2`::ref:`b64`
1074 v_mqsad_u32_u8 :ref:`vdst`::ref:`b128`, :ref:`src0`::ref:`b64`, :ref:`src1`::ref:`b32`, :ref:`vsrc2`::ref:`b128`
1075 v_msad_u8 :ref:`vdst`::ref:`u32`, :ref:`src0`::ref:`b32`, :ref:`src1`::ref:`b32`, :ref:`src2`::ref:`b32`
1076 v_mul_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1077 v_mul_f64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1078 v_mul_hi_i32 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1079 v_mul_hi_i32_i24_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1080 v_mul_hi_u32 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1081 v_mul_hi_u32_u24_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1082 v_mul_i32_i24_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1083 v_mul_legacy_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1084 v_mul_lo_i32 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1085 v_mul_lo_u32 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1086 v_mul_u32_u24_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1087 v_mullit_f32 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m`, :ref:`src2`::ref:`m` :ref:`clamp` :ref:`omod`
1088 v_nop_e64
1089 v_not_b32_e64 :ref:`vdst`, :ref:`src`
1090 v_or_b32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1091 v_qsad_pk_u16_u8 :ref:`vdst`::ref:`b64`, :ref:`src0`::ref:`b64`, :ref:`src1`::ref:`b32`, :ref:`src2`::ref:`b64`
1092 v_rcp_clamp_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1093 v_rcp_clamp_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1094 v_rcp_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1095 v_rcp_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1096 v_rcp_iflag_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1097 v_rcp_legacy_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1098 v_rndne_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1099 v_rndne_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1100 v_rsq_clamp_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1101 v_rsq_clamp_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1102 v_rsq_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1103 v_rsq_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1104 v_rsq_legacy_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1105 v_sad_hi_u8 :ref:`vdst`::ref:`u32`, :ref:`src0`::ref:`u8x4`, :ref:`src1`::ref:`u8x4`, :ref:`src2`::ref:`u32`
1106 v_sad_u16 :ref:`vdst`::ref:`u32`, :ref:`src0`::ref:`u16x2`, :ref:`src1`::ref:`u16x2`, :ref:`src2`::ref:`u32`
1107 v_sad_u32 :ref:`vdst`, :ref:`src0`, :ref:`src1`, :ref:`src2`
1108 v_sad_u8 :ref:`vdst`::ref:`u32`, :ref:`src0`::ref:`u8x4`, :ref:`src1`::ref:`u8x4`, :ref:`src2`::ref:`u32`
1109 v_sin_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1110 v_sqrt_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1111 v_sqrt_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1112 v_sub_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1113 v_sub_i32_e64 :ref:`vdst`, :ref:`sdst`, :ref:`src0`, :ref:`src1`
1114 v_subb_u32_e64 :ref:`vdst`, :ref:`sdst`, :ref:`src0`, :ref:`src1`, :ref:`ssrc2`
1115 v_subbrev_u32_e64 :ref:`vdst`, :ref:`sdst`, :ref:`src0`, :ref:`src1`, :ref:`ssrc2`
1116 v_subrev_f32_e64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`m` :ref:`clamp` :ref:`omod`
1117 v_subrev_i32_e64 :ref:`vdst`, :ref:`sdst`, :ref:`src0`, :ref:`src1`
1118 v_trig_preop_f64 :ref:`vdst`, :ref:`src0`::ref:`m`, :ref:`src1`::ref:`u32` :ref:`clamp` :ref:`omod`
1119 v_trunc_f32_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1120 v_trunc_f64_e64 :ref:`vdst`, :ref:`src`::ref:`m` :ref:`clamp` :ref:`omod`
1121 v_xor_b32_e64 :ref:`vdst`, :ref:`src0`, :ref:`src1`
1122
1123 VOPC
1124 -----------------------
1125
1126 .. parsed-literal::
1127
1128 **INSTRUCTION** **DST** **SRC0** **SRC1**
1129 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
1130 v_cmp_class_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`::ref:`b32`
1131 v_cmp_class_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`::ref:`b32`
1132 v_cmp_eq_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1133 v_cmp_eq_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1134 v_cmp_eq_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1135 v_cmp_eq_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1136 v_cmp_eq_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1137 v_cmp_eq_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1138 v_cmp_f_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1139 v_cmp_f_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1140 v_cmp_f_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1141 v_cmp_f_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1142 v_cmp_f_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1143 v_cmp_f_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1144 v_cmp_ge_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1145 v_cmp_ge_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1146 v_cmp_ge_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1147 v_cmp_ge_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1148 v_cmp_ge_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1149 v_cmp_ge_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1150 v_cmp_gt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1151 v_cmp_gt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1152 v_cmp_gt_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1153 v_cmp_gt_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1154 v_cmp_gt_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1155 v_cmp_gt_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1156 v_cmp_le_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1157 v_cmp_le_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1158 v_cmp_le_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1159 v_cmp_le_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1160 v_cmp_le_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1161 v_cmp_le_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1162 v_cmp_lg_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1163 v_cmp_lg_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1164 v_cmp_lt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1165 v_cmp_lt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1166 v_cmp_lt_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1167 v_cmp_lt_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1168 v_cmp_lt_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1169 v_cmp_lt_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1170 v_cmp_ne_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1171 v_cmp_ne_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1172 v_cmp_ne_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1173 v_cmp_ne_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1174 v_cmp_neq_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1175 v_cmp_neq_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1176 v_cmp_nge_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1177 v_cmp_nge_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1178 v_cmp_ngt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1179 v_cmp_ngt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1180 v_cmp_nle_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1181 v_cmp_nle_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1182 v_cmp_nlg_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1183 v_cmp_nlg_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1184 v_cmp_nlt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1185 v_cmp_nlt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1186 v_cmp_o_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1187 v_cmp_o_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1188 v_cmp_t_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1189 v_cmp_t_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1190 v_cmp_t_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1191 v_cmp_t_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1192 v_cmp_tru_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1193 v_cmp_tru_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1194 v_cmp_u_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1195 v_cmp_u_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1196 v_cmps_eq_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1197 v_cmps_eq_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1198 v_cmps_f_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1199 v_cmps_f_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1200 v_cmps_ge_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1201 v_cmps_ge_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1202 v_cmps_gt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1203 v_cmps_gt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1204 v_cmps_le_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1205 v_cmps_le_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1206 v_cmps_lg_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1207 v_cmps_lg_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1208 v_cmps_lt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1209 v_cmps_lt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1210 v_cmps_neq_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1211 v_cmps_neq_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1212 v_cmps_nge_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1213 v_cmps_nge_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1214 v_cmps_ngt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1215 v_cmps_ngt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1216 v_cmps_nle_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1217 v_cmps_nle_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1218 v_cmps_nlg_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1219 v_cmps_nlg_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1220 v_cmps_nlt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1221 v_cmps_nlt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1222 v_cmps_o_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1223 v_cmps_o_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1224 v_cmps_tru_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1225 v_cmps_tru_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1226 v_cmps_u_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1227 v_cmps_u_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1228 v_cmpsx_eq_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1229 v_cmpsx_eq_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1230 v_cmpsx_f_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1231 v_cmpsx_f_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1232 v_cmpsx_ge_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1233 v_cmpsx_ge_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1234 v_cmpsx_gt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1235 v_cmpsx_gt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1236 v_cmpsx_le_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1237 v_cmpsx_le_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1238 v_cmpsx_lg_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1239 v_cmpsx_lg_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1240 v_cmpsx_lt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1241 v_cmpsx_lt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1242 v_cmpsx_neq_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1243 v_cmpsx_neq_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1244 v_cmpsx_nge_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1245 v_cmpsx_nge_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1246 v_cmpsx_ngt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1247 v_cmpsx_ngt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1248 v_cmpsx_nle_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1249 v_cmpsx_nle_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1250 v_cmpsx_nlg_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1251 v_cmpsx_nlg_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1252 v_cmpsx_nlt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1253 v_cmpsx_nlt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1254 v_cmpsx_o_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1255 v_cmpsx_o_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1256 v_cmpsx_tru_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1257 v_cmpsx_tru_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1258 v_cmpsx_u_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1259 v_cmpsx_u_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1260 v_cmpx_class_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`::ref:`b32`
1261 v_cmpx_class_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`::ref:`b32`
1262 v_cmpx_eq_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1263 v_cmpx_eq_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1264 v_cmpx_eq_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1265 v_cmpx_eq_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1266 v_cmpx_eq_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1267 v_cmpx_eq_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1268 v_cmpx_f_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1269 v_cmpx_f_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1270 v_cmpx_f_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1271 v_cmpx_f_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1272 v_cmpx_f_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1273 v_cmpx_f_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1274 v_cmpx_ge_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1275 v_cmpx_ge_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1276 v_cmpx_ge_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1277 v_cmpx_ge_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1278 v_cmpx_ge_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1279 v_cmpx_ge_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1280 v_cmpx_gt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1281 v_cmpx_gt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1282 v_cmpx_gt_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1283 v_cmpx_gt_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1284 v_cmpx_gt_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1285 v_cmpx_gt_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1286 v_cmpx_le_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1287 v_cmpx_le_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1288 v_cmpx_le_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1289 v_cmpx_le_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1290 v_cmpx_le_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1291 v_cmpx_le_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1292 v_cmpx_lg_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1293 v_cmpx_lg_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1294 v_cmpx_lt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1295 v_cmpx_lt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1296 v_cmpx_lt_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1297 v_cmpx_lt_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1298 v_cmpx_lt_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1299 v_cmpx_lt_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1300 v_cmpx_ne_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1301 v_cmpx_ne_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1302 v_cmpx_ne_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1303 v_cmpx_ne_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1304 v_cmpx_neq_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1305 v_cmpx_neq_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1306 v_cmpx_nge_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1307 v_cmpx_nge_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1308 v_cmpx_ngt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1309 v_cmpx_ngt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1310 v_cmpx_nle_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1311 v_cmpx_nle_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1312 v_cmpx_nlg_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1313 v_cmpx_nlg_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1314 v_cmpx_nlt_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1315 v_cmpx_nlt_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1316 v_cmpx_o_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1317 v_cmpx_o_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1318 v_cmpx_t_i32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1319 v_cmpx_t_i64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1320 v_cmpx_t_u32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1321 v_cmpx_t_u64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1322 v_cmpx_tru_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1323 v_cmpx_tru_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1324 v_cmpx_u_f32 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1325 v_cmpx_u_f64 :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
1326
1327 .. |---| unicode:: U+02014 .. em dash
1328
1329
1330 .. toctree::
1331 :hidden:
1332
1333 gfx7_attr
1334 gfx7_bimm16
1335 gfx7_bimm32
1336 gfx7_fimm32
1337 gfx7_hwreg
1338 gfx7_label
1339 gfx7_msg
1340 gfx7_param
1341 gfx7_simm16
1342 gfx7_tgt
1343 gfx7_uimm16
1344 gfx7_waitcnt
1345 gfx7_addr_buf
1346 gfx7_addr_ds
1347 gfx7_addr_flat
1348 gfx7_addr_mimg
1349 gfx7_base_smem_addr
1350 gfx7_base_smem_buf
1351 gfx7_data_buf_atomic128
1352 gfx7_data_buf_atomic32
1353 gfx7_data_buf_atomic64
1354 gfx7_data_mimg_atomic_cmp
1355 gfx7_data_mimg_atomic_reg
1356 gfx7_data_mimg_store
1357 gfx7_dst_buf_128
1358 gfx7_dst_buf_64
1359 gfx7_dst_buf_96
1360 gfx7_dst_buf_lds
1361 gfx7_dst_flat_atomic32
1362 gfx7_dst_flat_atomic64
1363 gfx7_dst_mimg_gather4
1364 gfx7_dst_mimg_regular
1365 gfx7_offset_buf
1366 gfx7_offset_smem
1367 gfx7_rsrc_buf
1368 gfx7_rsrc_mimg
1369 gfx7_samp_mimg
1370 gfx7_sdst128_0
1371 gfx7_sdst256_0
1372 gfx7_sdst32_0
1373 gfx7_sdst32_1
1374 gfx7_sdst32_2
1375 gfx7_sdst512_0
1376 gfx7_sdst64_0
1377 gfx7_sdst64_1
1378 gfx7_src32_0
1379 gfx7_src32_1
1380 gfx7_src32_2
1381 gfx7_src32_3
1382 gfx7_src64_0
1383 gfx7_src64_1
1384 gfx7_src64_2
1385 gfx7_src_exp
1386 gfx7_ssrc32_0
1387 gfx7_ssrc32_1
1388 gfx7_ssrc32_2
1389 gfx7_ssrc32_3
1390 gfx7_ssrc32_4
1391 gfx7_ssrc64_0
1392 gfx7_ssrc64_1
1393 gfx7_ssrc64_2
1394 gfx7_ssrc64_3
1395 gfx7_vcc_64
1396 gfx7_vdata128_0
1397 gfx7_vdata32_0
1398 gfx7_vdata64_0
1399 gfx7_vdata96_0
1400 gfx7_vdst128_0
1401 gfx7_vdst32_0
1402 gfx7_vdst64_0
1403 gfx7_vdst96_0
1404 gfx7_vsrc128_0
1405 gfx7_vsrc32_0
1406 gfx7_vsrc64_0
1407 gfx7_mod
1408 gfx7_opt
1409 gfx7_ret
1410 gfx7_type_dev
0 ..
1 **************************************************
2 * *
3 * Automatically generated file, do not edit! *
4 * *
5 **************************************************
6
7 ============================
8 Syntax of GFX8 Instructions
9 ============================
10
11 .. contents::
12 :local:
13
14 Notation
15 ========
16
17 Notation used in this document is explained :ref:`here`.
18
19 Introduction
20 ============
21
22 An overview of generic syntax and other features of AMDGPU instructions may be found :ref:`in this document`.
23
24 Instructions
25 ============
26
27
28 DS
29 -----------------------
30
31 .. parsed-literal::
32
33 **INSTRUCTION** **DST** **SRC0** **SRC1** **SRC2** **MODIFIERS**
34 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
35 ds_add_f32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
36 ds_add_rtn_f32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
37 ds_add_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
38 ds_add_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
39 ds_add_src2_f32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
40 ds_add_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
41 ds_add_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
42 ds_add_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
43 ds_add_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
44 ds_and_b32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
45 ds_and_b64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
46 ds_and_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
47 ds_and_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
48 ds_and_src2_b32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
49 ds_and_src2_b64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
50 ds_append :ref:`vdst` :ref:`ds_offset16` :ref:`gds`
51 ds_bpermute_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16`
52 ds_cmpst_b32 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
53 ds_cmpst_b64 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
54 ds_cmpst_f32 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
55 ds_cmpst_f64 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
56 ds_cmpst_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
57 ds_cmpst_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
58 ds_cmpst_rtn_f32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
59 ds_cmpst_rtn_f64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
60 ds_condxchg32_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
61 ds_consume :ref:`vdst` :ref:`ds_offset16` :ref:`gds`
62 ds_dec_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
63 ds_dec_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
64 ds_dec_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
65 ds_dec_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
66 ds_dec_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
67 ds_dec_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
68 ds_gws_barrier :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
69 ds_gws_init :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
70 ds_gws_sema_br :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
71 ds_gws_sema_p :ref:`ds_offset16` :ref:`gds`
72 ds_gws_sema_release_all :ref:`ds_offset16` :ref:`gds`
73 ds_gws_sema_v :ref:`ds_offset16` :ref:`gds`
74 ds_inc_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
75 ds_inc_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
76 ds_inc_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
77 ds_inc_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
78 ds_inc_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
79 ds_inc_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
80 ds_max_f32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
81 ds_max_f64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
82 ds_max_i32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
83 ds_max_i64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
84 ds_max_rtn_f32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
85 ds_max_rtn_f64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
86 ds_max_rtn_i32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
87 ds_max_rtn_i64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
88 ds_max_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
89 ds_max_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
90 ds_max_src2_f32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
91 ds_max_src2_f64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
92 ds_max_src2_i32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
93 ds_max_src2_i64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
94 ds_max_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
95 ds_max_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
96 ds_max_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
97 ds_max_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
98 ds_min_f32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
99 ds_min_f64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
100 ds_min_i32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
101 ds_min_i64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
102 ds_min_rtn_f32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
103 ds_min_rtn_f64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
104 ds_min_rtn_i32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
105 ds_min_rtn_i64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
106 ds_min_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
107 ds_min_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
108 ds_min_src2_f32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
109 ds_min_src2_f64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
110 ds_min_src2_i32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
111 ds_min_src2_i64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
112 ds_min_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
113 ds_min_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
114 ds_min_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
115 ds_min_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
116 ds_mskor_b32 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
117 ds_mskor_b64 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
118 ds_mskor_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
119 ds_mskor_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
120 ds_nop
121 ds_or_b32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
122 ds_or_b64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
123 ds_or_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
124 ds_or_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
125 ds_or_src2_b32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
126 ds_or_src2_b64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
127 ds_ordered_count :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
128 ds_permute_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16`
129 ds_read2_b32 :ref:`vdst`::ref:`b32x2`, :ref:`vaddr` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
130 ds_read2_b64 :ref:`vdst`::ref:`b64x2`, :ref:`vaddr` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
131 ds_read2st64_b32 :ref:`vdst`::ref:`b32x2`, :ref:`vaddr` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
132 ds_read2st64_b64 :ref:`vdst`::ref:`b64x2`, :ref:`vaddr` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
133 ds_read_b128 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
134 ds_read_b32 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
135 ds_read_b64 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
136 ds_read_b96 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
137 ds_read_i16 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
138 ds_read_i8 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
139 ds_read_u16 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
140 ds_read_u8 :ref:`vdst`, :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
141 ds_rsub_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
142 ds_rsub_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
143 ds_rsub_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
144 ds_rsub_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
145 ds_rsub_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
146 ds_rsub_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
147 ds_sub_rtn_u32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
148 ds_sub_rtn_u64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
149 ds_sub_src2_u32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
150 ds_sub_src2_u64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
151 ds_sub_u32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
152 ds_sub_u64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
153 ds_swizzle_b32 :ref:`vdst`, :ref:`vaddr` :ref:`sw_offset16` :ref:`gds`
154 ds_wrap_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset16` :ref:`gds`
155 ds_write2_b32 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
156 ds_write2_b64 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
157 ds_write2st64_b32 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
158 ds_write2st64_b64 :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
159 ds_write_b128 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
160 ds_write_b16 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
161 ds_write_b32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
162 ds_write_b64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
163 ds_write_b8 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
164 ds_write_b96 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
165 ds_write_src2_b32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
166 ds_write_src2_b64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
167 ds_wrxchg2_rtn_b32 :ref:`vdst`::ref:`b32x2`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
168 ds_wrxchg2_rtn_b64 :ref:`vdst`::ref:`b64x2`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
169 ds_wrxchg2st64_rtn_b32 :ref:`vdst`::ref:`b32x2`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
170 ds_wrxchg2st64_rtn_b64 :ref:`vdst`::ref:`b64x2`, :ref:`vaddr`, :ref:`vdata0`, :ref:`vdata1` :ref:`ds_offset8` :ref:`ds_offset8` :ref:`gds`
171 ds_wrxchg_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
172 ds_wrxchg_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
173 ds_xor_b32 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
174 ds_xor_b64 :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
175 ds_xor_rtn_b32 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
176 ds_xor_rtn_b64 :ref:`vdst`, :ref:`vaddr`, :ref:`vdata` :ref:`ds_offset16` :ref:`gds`
177 ds_xor_src2_b32 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
178 ds_xor_src2_b64 :ref:`vaddr` :ref:`ds_offset16` :ref:`gds`
179
180 EXP
181 -----------------------
182
183 .. parsed-literal::
184
185 **INSTRUCTION** **DST** **SRC0** **SRC1** **SRC2** **SRC3** **MODIFIERS**
186 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
187 exp :ref:`tgt`, :ref:`vsrc0`, :ref:`vsrc1`, :ref:`vsrc2`, :ref:`vsrc3` :ref:`done` :ref:`compr` :ref:`vm`
188
189 FLAT
190 -----------------------
191
192 .. parsed-literal::
193
194 **INSTRUCTION** **DST** **SRC0** **SRC1** **MODIFIERS**
195 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
196 flat_atomic_add :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
197 flat_atomic_add_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
198 flat_atomic_and :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
199 flat_atomic_and_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
200 flat_atomic_cmpswap :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata`::ref:`b32x2` :ref:`glc` :ref:`slc`
201 flat_atomic_cmpswap_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata`::ref:`b64x2` :ref:`glc` :ref:`slc`
202 flat_atomic_dec :ref:`vdst`::ref:`opt`::ref:`u32`, :ref:`vaddr`, :ref:`vdata`::ref:`u32` :ref:`glc` :ref:`slc`
203 flat_atomic_dec_x2 :ref:`vdst`::ref:`opt`::ref:`u64`, :ref:`vaddr`, :ref:`vdata`::ref:`u64` :ref:`glc` :ref:`slc`
204 flat_atomic_inc :ref:`vdst`::ref:`opt`::ref:`u32`, :ref:`vaddr`, :ref:`vdata`::ref:`u32` :ref:`glc` :ref:`slc`
205 flat_atomic_inc_x2 :ref:`vdst`::ref:`opt`::ref:`u64`, :ref:`vaddr`, :ref:`vdata`::ref:`u64` :ref:`glc` :ref:`slc`
206 flat_atomic_or :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
207 flat_atomic_or_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
208 flat_atomic_smax :ref:`vdst`::ref:`opt`::ref:`s32`, :ref:`vaddr`, :ref:`vdata`::ref:`s32` :ref:`glc` :ref:`slc`
209 flat_atomic_smax_x2 :ref:`vdst`::ref:`opt`::ref:`s64`, :ref:`vaddr`, :ref:`vdata`::ref:`s64` :ref:`glc` :ref:`slc`
210 flat_atomic_smin :ref:`vdst`::ref:`opt`::ref:`s32`, :ref:`vaddr`, :ref:`vdata`::ref:`s32` :ref:`glc` :ref:`slc`
211 flat_atomic_smin_x2 :ref:`vdst`::ref:`opt`::ref:`s64`, :ref:`vaddr`, :ref:`vdata`::ref:`s64` :ref:`glc` :ref:`slc`
212 flat_atomic_sub :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
213 flat_atomic_sub_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
214 flat_atomic_swap :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
215 flat_atomic_swap_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
216 flat_atomic_umax :ref:`vdst`::ref:`opt`::ref:`u32`, :ref:`vaddr`, :ref:`vdata`::ref:`u32` :ref:`glc` :ref:`slc`
217 flat_atomic_umax_x2 :ref:`vdst`::ref:`opt`::ref:`u64`, :ref:`vaddr`, :ref:`vdata`::ref:`u64` :ref:`glc` :ref:`slc`
218 flat_atomic_umin :ref:`vdst`::ref:`opt`::ref:`u32`, :ref:`vaddr`, :ref:`vdata`::ref:`u32` :ref:`glc` :ref:`slc`
219 flat_atomic_umin_x2 :ref:`vdst`::ref:`opt`::ref:`u64`, :ref:`vaddr`, :ref:`vdata`::ref:`u64` :ref:`glc` :ref:`slc`
220 flat_atomic_xor :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
221 flat_atomic_xor_x2 :ref:`vdst`::ref:`opt`, :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
222 flat_load_dword :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
223 flat_load_dwordx2 :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
224 flat_load_dwordx3 :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
225 flat_load_dwordx4 :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
226 flat_load_sbyte :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
227 flat_load_sshort :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
228 flat_load_ubyte :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
229 flat_load_ushort :ref:`vdst`, :ref:`vaddr` :ref:`glc` :ref:`slc`
230 flat_store_byte :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
231 flat_store_dword :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
232 flat_store_dwordx2 :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
233 flat_store_dwordx3 :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
234 flat_store_dwordx4 :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
235 flat_store_short :ref:`vaddr`, :ref:`vdata` :ref:`glc` :ref:`slc`
236
237 MIMG
238 -----------------------
239
240 .. parsed-literal::
241
242 **INSTRUCTION** **DST** **SRC0** **SRC1** **SRC2** **MODIFIERS**
243 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
244 image_atomic_add :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
245 image_atomic_and :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
246 image_atomic_cmpswap :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
247 image_atomic_dec :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
248 image_atomic_inc :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
249 image_atomic_or :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
250 image_atomic_smax :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
251 image_atomic_smin :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
252 image_atomic_sub :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
253 image_atomic_swap :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
254 image_atomic_umax :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
255 image_atomic_umin :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
256 image_atomic_xor :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
257 image_gather4 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
258 image_gather4_b :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
259 image_gather4_b_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
260 image_gather4_b_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
261 image_gather4_b_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
262 image_gather4_c :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
263 image_gather4_c_b :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
264 image_gather4_c_b_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
265 image_gather4_c_b_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
266 image_gather4_c_b_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
267 image_gather4_c_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
268 image_gather4_c_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
269 image_gather4_c_l :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
270 image_gather4_c_l_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
271 image_gather4_c_lz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
272 image_gather4_c_lz_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
273 image_gather4_c_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
274 image_gather4_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
275 image_gather4_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
276 image_gather4_l :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
277 image_gather4_l_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
278 image_gather4_lz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
279 image_gather4_lz_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
280 image_gather4_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
281 image_get_lod :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
282 image_get_resinfo :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
283 image_load :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
284 image_load_mip :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
285 image_load_mip_pck :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
286 image_load_mip_pck_sgn :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
287 image_load_pck :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
288 image_load_pck_sgn :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
289 image_sample :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
290 image_sample_b :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
291 image_sample_b_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
292 image_sample_b_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
293 image_sample_b_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
294 image_sample_c :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
295 image_sample_c_b :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
296 image_sample_c_b_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
297 image_sample_c_b_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
298 image_sample_c_b_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
299 image_sample_c_cd :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
300 image_sample_c_cd_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
301 image_sample_c_cd_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
302 image_sample_c_cd_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
303 image_sample_c_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
304 image_sample_c_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
305 image_sample_c_d :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
306 image_sample_c_d_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
307 image_sample_c_d_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
308 image_sample_c_d_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
309 image_sample_c_l :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
310 image_sample_c_l_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
311 image_sample_c_lz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
312 image_sample_c_lz_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
313 image_sample_c_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
314 image_sample_cd :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
315 image_sample_cd_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
316 image_sample_cd_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
317 image_sample_cd_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
318 image_sample_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
319 image_sample_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
320 image_sample_d :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
321 image_sample_d_cl :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
322 image_sample_d_cl_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
323 image_sample_d_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
324 image_sample_l :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
325 image_sample_l_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
326 image_sample_lz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
327 image_sample_lz_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
328 image_sample_o :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`ssamp` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
329 image_store :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
330 image_store_mip :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da` :ref:`d16`
331 image_store_mip_pck :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
332 image_store_pck :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc` :ref:`dmask` :ref:`unorm` :ref:`glc` :ref:`slc` :ref:`lwe` :ref:`da`
333
334 MUBUF
335 -----------------------
336
337 .. parsed-literal::
338
339 **INSTRUCTION** **DST** **SRC0** **SRC1** **SRC2** **SRC3** **MODIFIERS**
340 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
341 buffer_atomic_add :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
342 buffer_atomic_add_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
343 buffer_atomic_and :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
344 buffer_atomic_and_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
345 buffer_atomic_cmpswap :ref:`vdata`::ref:`dst`::ref:`b32x2`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
346 buffer_atomic_cmpswap_x2 :ref:`vdata`::ref:`dst`::ref:`b64x2`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
347 buffer_atomic_dec :ref:`vdata`::ref:`dst`::ref:`u32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
348 buffer_atomic_dec_x2 :ref:`vdata`::ref:`dst`::ref:`u64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
349 buffer_atomic_inc :ref:`vdata`::ref:`dst`::ref:`u32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
350 buffer_atomic_inc_x2 :ref:`vdata`::ref:`dst`::ref:`u64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
351 buffer_atomic_or :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
352 buffer_atomic_or_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
353 buffer_atomic_smax :ref:`vdata`::ref:`dst`::ref:`s32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
354 buffer_atomic_smax_x2 :ref:`vdata`::ref:`dst`::ref:`s64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
355 buffer_atomic_smin :ref:`vdata`::ref:`dst`::ref:`s32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
356 buffer_atomic_smin_x2 :ref:`vdata`::ref:`dst`::ref:`s64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
357 buffer_atomic_sub :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
358 buffer_atomic_sub_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
359 buffer_atomic_swap :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
360 buffer_atomic_swap_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
361 buffer_atomic_umax :ref:`vdata`::ref:`dst`::ref:`u32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
362 buffer_atomic_umax_x2 :ref:`vdata`::ref:`dst`::ref:`u64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
363 buffer_atomic_umin :ref:`vdata`::ref:`dst`::ref:`u32`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
364 buffer_atomic_umin_x2 :ref:`vdata`::ref:`dst`::ref:`u64`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
365 buffer_atomic_xor :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
366 buffer_atomic_xor_x2 :ref:`vdata`::ref:`dst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
367 buffer_load_dword :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
368 buffer_load_dwordx2 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
369 buffer_load_dwordx3 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
370 buffer_load_dwordx4 :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
371 buffer_load_format_d16_x :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
372 buffer_load_format_d16_xy :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
373 buffer_load_format_d16_xyz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
374 buffer_load_format_d16_xyzw :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
375 buffer_load_format_x :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
376 buffer_load_format_xy :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
377 buffer_load_format_xyz :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
378 buffer_load_format_xyzw :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
379 buffer_load_sbyte :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
380 buffer_load_sshort :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
381 buffer_load_ubyte :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
382 buffer_load_ushort :ref:`vdst`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc` :ref:`lds`
383 buffer_store_byte :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
384 buffer_store_dword :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
385 buffer_store_dwordx2 :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
386 buffer_store_dwordx3 :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
387 buffer_store_dwordx4 :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
388 buffer_store_format_d16_x :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
389 buffer_store_format_d16_xy :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
390 buffer_store_format_d16_xyz :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
391 buffer_store_format_d16_xyzw :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
392 buffer_store_format_x :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
393 buffer_store_format_xy :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
394 buffer_store_format_xyz :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
395 buffer_store_format_xyzw :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
396 buffer_store_lds_dword :ref:`srsrc`, :ref:`soffset` :ref:`buf_offset12` :ref:`lds` :ref:`glc` :ref:`slc`
397 buffer_store_short :ref:`vdata`, :ref:`vaddr`, :ref:`srsrc`, :ref:`soffset` :ref:`idxen` :ref:`offen` :ref:`buf_offset12` :ref:`glc` :ref:`slc`
398 buffer_wbinvl1
399 buffer_wbinvl1_vol
400
401 SMEM
402 -----------------------
403
404 .. parsed-literal::
405
406 **INSTRUCTION** **DST** **SRC0** **SRC1** **SRC2** **MODIFIERS**
407 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
408 s_atc_probe :ref:`imm3`, :ref:`sbase`, :ref:`soffset`
409 s_atc_probe_buffer :ref:`imm3`, :ref:`sbase`, :ref:`soffset`
410 s_buffer_load_dword :ref:`sdst`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
411 s_buffer_load_dwordx16 :ref:`sdst`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
412 s_buffer_load_dwordx2 :ref:`sdst`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
413 s_buffer_load_dwordx4 :ref:`sdst`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
414 s_buffer_load_dwordx8 :ref:`sdst`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
415 s_buffer_store_dword :ref:`sdata`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
416 s_buffer_store_dwordx2 :ref:`sdata`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
417 s_buffer_store_dwordx4 :ref:`sdata`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
418 s_dcache_inv
419 s_dcache_inv_vol
420 s_dcache_wb
421 s_dcache_wb_vol
422 s_load_dword :ref:`sdst`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
423 s_load_dwordx16 :ref:`sdst`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
424 s_load_dwordx2 :ref:`sdst`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
425 s_load_dwordx4 :ref:`sdst`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
426 s_load_dwordx8 :ref:`sdst`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
427 s_memrealtime :ref:`sdst`
428 s_memtime :ref:`sdst`
429 s_store_dword :ref:`sdata`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
430 s_store_dwordx2 :ref:`sdata`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
431 s_store_dwordx4 :ref:`sdata`, :ref:`sbase`, :ref:`soffset` :ref:`glc`
432
433 SOP1
434 -----------------------
435
436 .. parsed-literal::
437
438 **INSTRUCTION** **DST** **SRC**
439 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
440 s_abs_i32 :ref:`sdst`, :ref:`ssrc`
441 s_and_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
442 s_andn2_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
443 s_bcnt0_i32_b32 :ref:`sdst`, :ref:`ssrc`
444 s_bcnt0_i32_b64 :ref:`sdst`, :ref:`ssrc`
445 s_bcnt1_i32_b32 :ref:`sdst`, :ref:`ssrc`
446 s_bcnt1_i32_b64 :ref:`sdst`, :ref:`ssrc`
447 s_bitset0_b32 :ref:`sdst`, :ref:`ssrc`
448 s_bitset0_b64 :ref:`sdst`, :ref:`ssrc`::ref:`b32`
449 s_bitset1_b32 :ref:`sdst`, :ref:`ssrc`
450 s_bitset1_b64 :ref:`sdst`, :ref:`ssrc`::ref:`b32`
451 s_brev_b32 :ref:`sdst`, :ref:`ssrc`
452 s_brev_b64 :ref:`sdst`, :ref:`ssrc`
453 s_cbranch_join :ref:`ssrc`
454 s_cmov_b32 :ref:`sdst`, :ref:`ssrc`
455 s_cmov_b64 :ref:`sdst`, :ref:`ssrc`
456 s_ff0_i32_b32 :ref:`sdst`, :ref:`ssrc`
457 s_ff0_i32_b64 :ref:`sdst`, :ref:`ssrc`
458 s_ff1_i32_b32 :ref:`sdst`, :ref:`ssrc`
459 s_ff1_i32_b64 :ref:`sdst`, :ref:`ssrc`
460 s_flbit_i32 :ref:`sdst`, :ref:`ssrc`
461 s_flbit_i32_b32 :ref:`sdst`, :ref:`ssrc`
462 s_flbit_i32_b64 :ref:`sdst`, :ref:`ssrc`
463 s_flbit_i32_i64 :ref:`sdst`, :ref:`ssrc`
464 s_getpc_b64 :ref:`sdst`
465 s_mov_b32 :ref:`sdst`, :ref:`ssrc`
466 s_mov_b64 :ref:`sdst`, :ref:`ssrc`
467 s_mov_fed_b32 :ref:`sdst`, :ref:`ssrc`
468 s_movreld_b32 :ref:`sdst`, :ref:`ssrc`
469 s_movreld_b64 :ref:`sdst`, :ref:`ssrc`
470 s_movrels_b32 :ref:`sdst`, :ref:`ssrc`
471 s_movrels_b64 :ref:`sdst`, :ref:`ssrc`
472 s_nand_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
473 s_nor_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
474 s_not_b32 :ref:`sdst`, :ref:`ssrc`
475 s_not_b64 :ref:`sdst`, :ref:`ssrc`
476 s_or_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
477 s_orn2_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
478 s_quadmask_b32 :ref:`sdst`, :ref:`ssrc`
479 s_quadmask_b64 :ref:`sdst`, :ref:`ssrc`
480 s_rfe_b64 :ref:`ssrc`
481 s_set_gpr_idx_idx :ref:`ssrc`
482 s_setpc_b64 :ref:`ssrc`
483 s_sext_i32_i16 :ref:`sdst`, :ref:`ssrc`
484 s_sext_i32_i8 :ref:`sdst`, :ref:`ssrc`
485 s_swappc_b64 :ref:`sdst`, :ref:`ssrc`
486 s_wqm_b32 :ref:`sdst`, :ref:`ssrc`
487 s_wqm_b64 :ref:`sdst`, :ref:`ssrc`
488 s_xnor_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
489 s_xor_saveexec_b64 :ref:`sdst`, :ref:`ssrc`
490
491 SOP2
492 -----------------------
493
494 .. parsed-literal::
495
496 **INSTRUCTION** **DST** **SRC0** **SRC1**
497 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
498 s_absdiff_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
499 s_add_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
500 s_add_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
501 s_addc_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
502 s_and_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
503 s_and_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
504 s_andn2_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
505 s_andn2_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
506 s_ashr_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
507 s_ashr_i64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
508 s_bfe_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
509 s_bfe_i64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
510 s_bfe_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
511 s_bfe_u64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
512 s_bfm_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
513 s_bfm_b64 :ref:`sdst`, :ref:`ssrc0`::ref:`b32`, :ref:`ssrc1`::ref:`b32`
514 s_cbranch_g_fork :ref:`ssrc0`, :ref:`ssrc1`
515 s_cselect_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
516 s_cselect_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
517 s_lshl_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
518 s_lshl_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
519 s_lshr_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
520 s_lshr_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
521 s_max_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
522 s_max_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
523 s_min_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
524 s_min_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
525 s_mul_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
526 s_nand_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
527 s_nand_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
528 s_nor_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
529 s_nor_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
530 s_or_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
531 s_or_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
532 s_orn2_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
533 s_orn2_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
534 s_rfe_restore_b64 :ref:`ssrc0`, :ref:`ssrc1`::ref:`b32`
535 s_sub_i32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
536 s_sub_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
537 s_subb_u32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
538 s_xnor_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
539 s_xnor_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
540 s_xor_b32 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
541 s_xor_b64 :ref:`sdst`, :ref:`ssrc0`, :ref:`ssrc1`
542
543 SOPC
544 -----------------------
545
546 .. parsed-literal::
547
548 **INSTRUCTION** **SRC0** **SRC1**
549 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
550 s_bitcmp0_b32 :ref:`ssrc0`, :ref:`ssrc1`
551 s_bitcmp0_b64 :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
552 s_bitcmp1_b32 :ref:`ssrc0`, :ref:`ssrc1`
553 s_bitcmp1_b64 :ref:`ssrc0`, :ref:`ssrc1`::ref:`u32`
554 s_cmp_eq_i32 :ref:`ssrc0`, :ref:`ssrc1`
555 s_cmp_eq_u32 :ref:`ssrc0`, :ref:`ssrc1`
556 s_cmp_eq_u64 :ref:`ssrc0`, :ref:`ssrc1`
557 s_cmp_ge_i32 :ref:`ssrc0`, :ref:`ssrc1`
558 s_cmp_ge_u32 :ref:`ssrc0`, :ref:`ssrc1`
559 s_cmp_gt_i32 :ref:`ssrc0`, :ref:`ssrc1`
560 s_cmp_gt_u32 :ref:`ssrc0`, :ref:`ssrc1`
561 s_cmp_le_i32 :ref:`ssrc0`, :ref:`ssrc1`
562 s_cmp_le_u32 :ref:`ssrc0`, :ref:`ssrc1`
563 s_cmp_lg_i32 :ref:`ssrc0`, :ref:`ssrc1`
564 s_cmp_lg_u32 :ref:`ssrc0`, :ref:`ssrc1`
565 s_cmp_lg_u64 :ref:`ssrc0`, :ref:`ssrc1`
566 s_cmp_lt_i32 :ref:`ssrc0`, :ref:`ssrc1`
567 s_cmp_lt_u32 :ref:`ssrc0`, :ref:`ssrc1`
568 s_set_gpr_idx_on :ref:`ssrc`, :ref:`imm4`
569 s_setvskip :ref:`ssrc0`, :ref:`ssrc1`
570
571 SOPK
572 -----------------------
573
574 .. parsed-literal::
575
576 **INSTRUCTION** **DST** **SRC0** **SRC1**
577 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
578 s_addk_i32 :ref:`sdst`, :ref:`imm16`
579 s_cbranch_i_fork :ref:`ssrc`, :ref:`label`
580 s_cmovk_i32 :ref:`sdst`, :ref:`imm16`
581 s_cmpk_eq_i32 :ref:`ssrc`, :ref:`imm16`
582 s_cmpk_eq_u32 :ref:`ssrc`, :ref:`imm16`
583 s_cmpk_ge_i32 :ref:`ssrc`, :ref:`imm16`
584 s_cmpk_ge_u32 :ref:`ssrc`, :ref:`imm16`
585 s_cmpk_gt_i32 :ref:`ssrc`, :ref:`imm16`
586 s_cmpk_gt_u32 :ref:`ssrc`, :ref:`imm16`
587 s_cmpk_le_i32 :ref:`ssrc`, :ref:`imm16`
588 s_cmpk_le_u32 :ref:`ssrc`, :ref:`imm16`
589 s_cmpk_lg_i32 :ref:`ssrc`, :ref:`imm16`
590 s_cmpk_lg_u32 :ref:`ssrc`, :ref:`imm16`
591 s_cmpk_lt_i32 :ref:`ssrc`, :ref:`imm16`
592 s_cmpk_lt_u32 :ref:`ssrc`, :ref:`imm16`
593 s_getreg_b32 :ref:`sdst`, :ref:`hwreg`
594 s_movk_i32 :ref:`sdst`, :ref:`imm16`
595 s_mulk_i32 :ref:`sdst`, :ref:`imm16`
596 s_setreg_b32 :ref:`hwreg`, :ref:`ssrc`
597 s_setreg_imm32_b32 :ref:`hwreg`, :ref:`imm32`
598
599 SOPP
600 -----------------------
601
602 .. parsed-literal::
603
604 **INSTRUCTION** **SRC**
605 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
606 s_barrier
607 s_branch :ref:`label`
608 s_cbranch_cdbgsys :ref:`label`
609 s_cbranch_cdbgsys_and_user :ref:`label`
610 s_cbranch_cdbgsys_or_user :ref:`label`
611 s_cbranch_cdbguser :ref:`label`
612 s_cbranch_execnz :ref:`label`
613 s_cbranch_execz :ref:`label`
614 s_cbranch_scc0 :ref:`label`
615 s_cbranch_scc1 :ref:`label`
616 s_cbranch_vccnz :ref:`label`
617 s_cbranch_vccz :ref:`label`
618 s_decperflevel :ref:`imm16`
619 s_endpgm
620 s_endpgm_saved
621 s_icache_inv
622 s_incperflevel :ref:`imm16`
623 s_nop :ref:`imm16`
624 s_sendmsg :ref:`msg`
625 s_sendmsghalt :ref:`msg`
626 s_set_gpr_idx_mode :ref:`imm4`
627 s_set_gpr_idx_off
628 s_sethalt :ref:`imm16`
629 s_setkill :ref:`imm16`
630 s_setprio :ref:`imm16`
631 s_sleep :ref:`imm16`
632 s_trap :ref:`imm16`
633 s_ttracedata
634 s_waitcnt :ref:`waitcnt`
635 s_wakeup
636
637 VINTRP
638 -----------------------
639
640 .. parsed-literal::
641
642 **INSTRUCTION** **DST** **SRC0** **SRC1**
643 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
644 v_interp_mov_f32 :ref:`vdst`, :ref:`param`::ref:`b32`, :ref:`attr`::ref:`b32`
645 v_interp_p1_f32 :ref:`vdst`, :ref:`vsrc`, :ref:`attr`::ref:`b32`
646 v_interp_p2_f32 :ref:`vdst`, :ref:`vsrc`, :ref:`attr`::ref:`b32`
647
648 VOP1
649 -----------------------
650
651 .. parsed-literal::
652
653 **INSTRUCTION** **DST** **SRC** **MODIFIERS**
654 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
655 v_bfrev_b32 :ref:`vdst`, :ref:`src`
656 v_bfrev_b32_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
657 v_bfrev_b32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
658 v_ceil_f16 :ref:`vdst`, :ref:`src`
659 v_ceil_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
660 v_ceil_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
661 v_ceil_f32 :ref:`vdst`, :ref:`src`
662 v_ceil_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
663 v_ceil_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
664 v_ceil_f64 :ref:`vdst`, :ref:`src`
665 v_clrexcp
666 v_cos_f16 :ref:`vdst`, :ref:`src`
667 v_cos_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
668 v_cos_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
669 v_cos_f32 :ref:`vdst`, :ref:`src`
670 v_cos_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
671 v_cos_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
672 v_cvt_f16_f32 :ref:`vdst`, :ref:`src`
673 v_cvt_f16_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
674 v_cvt_f16_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
675 v_cvt_f16_i16 :ref:`vdst`, :ref:`src`
676 v_cvt_f16_i16_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
677 v_cvt_f16_i16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
678 v_cvt_f16_u16 :ref:`vdst`, :ref:`src`
679 v_cvt_f16_u16_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
680 v_cvt_f16_u16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
681 v_cvt_f32_f16 :ref:`vdst`, :ref:`src`
682 v_cvt_f32_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
683 v_cvt_f32_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
684 v_cvt_f32_f64 :ref:`vdst`, :ref:`src`
685 v_cvt_f32_i32 :ref:`vdst`, :ref:`src`
686 v_cvt_f32_i32_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
687 v_cvt_f32_i32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
688 v_cvt_f32_u32 :ref:`vdst`, :ref:`src`
689 v_cvt_f32_u32_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
690 v_cvt_f32_u32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
691 v_cvt_f32_ubyte0 :ref:`vdst`, :ref:`src`
692 v_cvt_f32_ubyte0_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
693 v_cvt_f32_ubyte0_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
694 v_cvt_f32_ubyte1 :ref:`vdst`, :ref:`src`
695 v_cvt_f32_ubyte1_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
696 v_cvt_f32_ubyte1_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
697 v_cvt_f32_ubyte2 :ref:`vdst`, :ref:`src`
698 v_cvt_f32_ubyte2_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
699 v_cvt_f32_ubyte2_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
700 v_cvt_f32_ubyte3 :ref:`vdst`, :ref:`src`
701 v_cvt_f32_ubyte3_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
702 v_cvt_f32_ubyte3_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
703 v_cvt_f64_f32 :ref:`vdst`, :ref:`src`
704 v_cvt_f64_i32 :ref:`vdst`, :ref:`src`
705 v_cvt_f64_u32 :ref:`vdst`, :ref:`src`
706 v_cvt_flr_i32_f32 :ref:`vdst`, :ref:`src`
707 v_cvt_flr_i32_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
708 v_cvt_flr_i32_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
709 v_cvt_i16_f16 :ref:`vdst`, :ref:`src`
710 v_cvt_i16_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
711 v_cvt_i16_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
712 v_cvt_i32_f32 :ref:`vdst`, :ref:`src`
713 v_cvt_i32_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
714 v_cvt_i32_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
715 v_cvt_i32_f64 :ref:`vdst`, :ref:`src`
716 v_cvt_off_f32_i4 :ref:`vdst`, :ref:`src`
717 v_cvt_off_f32_i4_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
718 v_cvt_off_f32_i4_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
719 v_cvt_rpi_i32_f32 :ref:`vdst`, :ref:`src`
720 v_cvt_rpi_i32_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
721 v_cvt_rpi_i32_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
722 v_cvt_u16_f16 :ref:`vdst`, :ref:`src`
723 v_cvt_u16_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
724 v_cvt_u16_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
725 v_cvt_u32_f32 :ref:`vdst`, :ref:`src`
726 v_cvt_u32_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
727 v_cvt_u32_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
728 v_cvt_u32_f64 :ref:`vdst`, :ref:`src`
729 v_exp_f16 :ref:`vdst`, :ref:`src`
730 v_exp_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
731 v_exp_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
732 v_exp_f32 :ref:`vdst`, :ref:`src`
733 v_exp_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
734 v_exp_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
735 v_exp_legacy_f32 :ref:`vdst`, :ref:`src`
736 v_exp_legacy_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
737 v_exp_legacy_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
738 v_ffbh_i32 :ref:`vdst`, :ref:`src`
739 v_ffbh_i32_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
740 v_ffbh_i32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
741 v_ffbh_u32 :ref:`vdst`, :ref:`src`
742 v_ffbh_u32_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
743 v_ffbh_u32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
744 v_ffbl_b32 :ref:`vdst`, :ref:`src`
745 v_ffbl_b32_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
746 v_ffbl_b32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
747 v_floor_f16 :ref:`vdst`, :ref:`src`
748 v_floor_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
749 v_floor_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
750 v_floor_f32 :ref:`vdst`, :ref:`src`
751 v_floor_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
752 v_floor_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
753 v_floor_f64 :ref:`vdst`, :ref:`src`
754 v_fract_f16 :ref:`vdst`, :ref:`src`
755 v_fract_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
756 v_fract_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
757 v_fract_f32 :ref:`vdst`, :ref:`src`
758 v_fract_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
759 v_fract_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
760 v_fract_f64 :ref:`vdst`, :ref:`src`
761 v_frexp_exp_i16_f16 :ref:`vdst`, :ref:`src`
762 v_frexp_exp_i16_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
763 v_frexp_exp_i16_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
764 v_frexp_exp_i32_f32 :ref:`vdst`, :ref:`src`
765 v_frexp_exp_i32_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
766 v_frexp_exp_i32_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
767 v_frexp_exp_i32_f64 :ref:`vdst`, :ref:`src`
768 v_frexp_mant_f16 :ref:`vdst`, :ref:`src`
769 v_frexp_mant_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
770 v_frexp_mant_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
771 v_frexp_mant_f32 :ref:`vdst`, :ref:`src`
772 v_frexp_mant_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
773 v_frexp_mant_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
774 v_frexp_mant_f64 :ref:`vdst`, :ref:`src`
775 v_log_f16 :ref:`vdst`, :ref:`src`
776 v_log_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
777 v_log_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
778 v_log_f32 :ref:`vdst`, :ref:`src`
779 v_log_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
780 v_log_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
781 v_log_legacy_f32 :ref:`vdst`, :ref:`src`
782 v_log_legacy_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
783 v_log_legacy_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
784 v_mov_b32 :ref:`vdst`, :ref:`src`
785 v_mov_b32_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
786 v_mov_b32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
787 v_mov_fed_b32 :ref:`vdst`, :ref:`src`
788 v_mov_fed_b32_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
789 v_mov_fed_b32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
790 v_movreld_b32 :ref:`vdst`, :ref:`src`
791 v_movrels_b32 :ref:`vdst`, :ref:`vsrc`
792 v_movrelsd_b32 :ref:`vdst`, :ref:`vsrc`
793 v_nop
794 v_not_b32 :ref:`vdst`, :ref:`src`
795 v_not_b32_dpp :ref:`vdst`, :ref:`vsrc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
796 v_not_b32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
797 v_rcp_f16 :ref:`vdst`, :ref:`src`
798 v_rcp_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
799 v_rcp_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
800 v_rcp_f32 :ref:`vdst`, :ref:`src`
801 v_rcp_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
802 v_rcp_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
803 v_rcp_f64 :ref:`vdst`, :ref:`src`
804 v_rcp_iflag_f32 :ref:`vdst`, :ref:`src`
805 v_rcp_iflag_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
806 v_rcp_iflag_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
807 v_readfirstlane_b32 :ref:`sdst`, :ref:`vsrc`
808 v_rndne_f16 :ref:`vdst`, :ref:`src`
809 v_rndne_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
810 v_rndne_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
811 v_rndne_f32 :ref:`vdst`, :ref:`src`
812 v_rndne_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
813 v_rndne_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
814 v_rndne_f64 :ref:`vdst`, :ref:`src`
815 v_rsq_f16 :ref:`vdst`, :ref:`src`
816 v_rsq_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
817 v_rsq_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
818 v_rsq_f32 :ref:`vdst`, :ref:`src`
819 v_rsq_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
820 v_rsq_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
821 v_rsq_f64 :ref:`vdst`, :ref:`src`
822 v_sin_f16 :ref:`vdst`, :ref:`src`
823 v_sin_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
824 v_sin_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
825 v_sin_f32 :ref:`vdst`, :ref:`src`
826 v_sin_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
827 v_sin_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
828 v_sqrt_f16 :ref:`vdst`, :ref:`src`
829 v_sqrt_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
830 v_sqrt_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
831 v_sqrt_f32 :ref:`vdst`, :ref:`src`
832 v_sqrt_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
833 v_sqrt_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
834 v_sqrt_f64 :ref:`vdst`, :ref:`src`
835 v_trunc_f16 :ref:`vdst`, :ref:`src`
836 v_trunc_f16_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
837 v_trunc_f16_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
838 v_trunc_f32 :ref:`vdst`, :ref:`src`
839 v_trunc_f32_dpp :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
840 v_trunc_f32_sdwa :ref:`vdst`, :ref:`vsrc`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel`
841 v_trunc_f64 :ref:`vdst`, :ref:`src`
842
843 VOP2
844 -----------------------
845
846 .. parsed-literal::
847
848 **INSTRUCTION** **DST0** **DST1** **SRC0** **SRC1** **SRC2** **MODIFIERS**
849 \ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|\ |---|
850 v_add_f16 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
851 v_add_f16_dpp :ref:`vdst`, :ref:`vsrc0`::ref:`m`, :ref:`vsrc1`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
852 v_add_f16_sdwa :ref:`vdst`, :ref:`vsrc0`::ref:`m`, :ref:`vsrc1`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel` :ref:`src1_sel`
853 v_add_f32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
854 v_add_f32_dpp :ref:`vdst`, :ref:`vsrc0`::ref:`m`, :ref:`vsrc1`::ref:`m` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
855 v_add_f32_sdwa :ref:`vdst`, :ref:`vsrc0`::ref:`m`, :ref:`vsrc1`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel` :ref:`src1_sel`
856 v_add_u16 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
857 v_add_u16_dpp :ref:`vdst`, :ref:`vsrc0`, :ref:`vsrc1` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
858 v_add_u16_sdwa :ref:`vdst`, :ref:`vsrc0`::ref:`m`, :ref:`vsrc1`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel` :ref:`src1_sel`
859 v_add_u32 :ref:`vdst`, :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`
860 v_add_u32_dpp :ref:`vdst`, :ref:`vcc`, :ref:`vsrc0`, :ref:`vsrc1` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
861 v_add_u32_sdwa :ref:`vdst`, :ref:`vcc`, :ref:`vsrc0`::ref:`m`, :ref:`vsrc1`::ref:`m` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel` :ref:`src1_sel`
862 v_addc_u32 :ref:`vdst`, :ref:`vcc`, :ref:`src0`, :ref:`vsrc1`, :ref:`vcc`
863 v_addc_u32_dpp :ref:`vdst`, :ref:`vcc`, :ref:`vsrc0`, :ref:`vsrc1`, :ref:`vcc` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
864 v_addc_u32_sdwa :ref:`vdst`, :ref:`vcc`, :ref:`vsrc0`::ref:`m`, :ref:`vsrc1`::ref:`m`, :ref:`vcc` :ref:`clamp` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel` :ref:`src1_sel`
865 v_and_b32 :ref:`vdst`, :ref:`src0`, :ref:`vsrc1`
866 v_and_b32_dpp :ref:`vdst`, :ref:`vsrc0`, :ref:`vsrc1` :ref:`dpp_ctrl` :ref:`row_mask` :ref:`bank_mask` :ref:`bound_ctrl`
867 v_and_b32_sdwa :ref:`vdst`, :ref:`vsrc0`::ref:`m`, :ref:`vsrc1`::ref:`m` :ref:`dst_sel` :ref:`dst_unused` :ref:`src0_sel` :ref:`src1_sel`
868 v_ashrrev_i16 :ref:`vdst`, :ref:`src0