1 // RUN: llvm-mc -arch=amdgcn -show-encoding %s | FileCheck %s 2 // RUN: llvm-mc -arch=amdgcn -mcpu=SI -show-encoding %s | FileCheck %s 3 4 //===----------------------------------------------------------------------===// 5 // Checks for 16-bit Offsets 6 //===----------------------------------------------------------------------===// 7 8 ds_add_u32 v2, v4 offset:16 9 // CHECK: ds_add_u32 v2, v4 offset:16 ; encoding: [0x10,0x00,0x00,0xd8,0x02,0x04,0x00,0x00] 10 11 //===----------------------------------------------------------------------===// 12 // Checks for 2 8-bit Offsets 13 //===----------------------------------------------------------------------===// 14 15 ds_write2_b32 v2, v4, v6 offset0:4 16 // CHECK: ds_write2_b32 v2, v4, v6 offset0:4 ; encoding: [0x04,0x00,0x38,0xd8,0x02,0x04,0x06,0x00] 17 18 ds_write2_b32 v2, v4, v6 offset0:4 offset1:8 19 // CHECK: ds_write2_b32 v2, v4, v6 offset0:4 offset1:8 ; encoding: [0x04,0x08,0x38,0xd8,0x02,0x04,0x06,0x00] 20 21 ds_write2_b32 v2, v4, v6 offset1:8 22 // CHECK: ds_write2_b32 v2, v4, v6 offset1:8 ; encoding: [0x00,0x08,0x38,0xd8,0x02,0x04,0x06,0x00] 23 24 ds_read2_b32 v[8:9], v2 offset0:4 25 // CHECK: ds_read2_b32 v[8:9], v2 offset0:4 ; encoding: [0x04,0x00,0xdc,0xd8,0x02,0x00,0x00,0x08] 26 27 ds_read2_b32 v[8:9], v2 offset0:4 offset1:8 28 // CHECK: ds_read2_b32 v[8:9], v2 offset0:4 offset1:8 ; encoding: [0x04,0x08,0xdc,0xd8,0x02,0x00,0x00,0x08] 29 30 ds_read2_b32 v[8:9], v2 offset1:8 31 // CHECK: ds_read2_b32 v[8:9], v2 offset1:8 ; encoding: [0x00,0x08,0xdc,0xd8,0x02,0x00,0x00,0x08] 32 //===----------------------------------------------------------------------===// 33 // Instructions 34 //===----------------------------------------------------------------------===// 35 36 ds_add_u32 v2, v4 37 // CHECK: ds_add_u32 v2, v4 ; encoding: [0x00,0x00,0x00,0xd8,0x02,0x04,0x00,0x00] 38 39 ds_sub_u32 v2, v4 40 // CHECK: ds_sub_u32 v2, v4 ; encoding: [0x00,0x00,0x04,0xd8,0x02,0x04,0x00,0x00] 41 42 ds_rsub_u32 v2, v4 43 // CHECK: ds_rsub_u32 v2, v4 ; encoding: [0x00,0x00,0x08,0xd8,0x02,0x04,0x00,0x00] 44 45 ds_inc_u32 v2, v4 46 // CHECK: ds_inc_u32 v2, v4 ; encoding: [0x00,0x00,0x0c,0xd8,0x02,0x04,0x00,0x00] 47 48 ds_dec_u32 v2, v4 49 // CHECK: ds_dec_u32 v2, v4 ; encoding: [0x00,0x00,0x10,0xd8,0x02,0x04,0x00,0x00] 50 51 ds_min_i32 v2, v4 52 // CHECK: ds_min_i32 v2, v4 ; encoding: [0x00,0x00,0x14,0xd8,0x02,0x04,0x00,0x00] 53 54 ds_max_i32 v2, v4 55 // CHECK: ds_max_i32 v2, v4 ; encoding: [0x00,0x00,0x18,0xd8,0x02,0x04,0x00,0x00] 56 57 ds_min_u32 v2, v4 58 // CHECK: ds_min_u32 v2, v4 ; encoding: [0x00,0x00,0x1c,0xd8,0x02,0x04,0x00,0x00] 59 60 ds_max_u32 v2, v4 61 // CHECK: ds_max_u32 v2, v4 ; encoding: [0x00,0x00,0x20,0xd8,0x02,0x04,0x00,0x00] 62 63 ds_and_b32 v2, v4 64 // CHECK: ds_and_b32 v2, v4 ; encoding: [0x00,0x00,0x24,0xd8,0x02,0x04,0x00,0x00] 65 66 ds_or_b32 v2, v4 67 // CHECK: ds_or_b32 v2, v4 ; encoding: [0x00,0x00,0x28,0xd8,0x02,0x04,0x00,0x00] 68 69 ds_xor_b32 v2, v4 70 // CHECK: ds_xor_b32 v2, v4 ; encoding: [0x00,0x00,0x2c,0xd8,0x02,0x04,0x00,0x00] 71 72 ds_mskor_b32 v2, v4, v6 73 // CHECK: ds_mskor_b32 v2, v4, v6 ; encoding: [0x00,0x00,0x30,0xd8,0x02,0x04,0x06,0x00] 74 75 ds_write_b32 v2, v4 76 // CHECK: ds_write_b32 v2, v4 ; encoding: [0x00,0x00,0x34,0xd8,0x02,0x04,0x00,0x00] 77 78 ds_write2_b32 v2, v4, v6 79 // CHECK: ds_write2_b32 v2, v4, v6 ; encoding: [0x00,0x00,0x38,0xd8,0x02,0x04,0x06,0x00] 80 81 ds_write2st64_b32 v2, v4, v6 82 // CHECK: ds_write2st64_b32 v2, v4, v6 ; encoding: [0x00,0x00,0x3c,0xd8,0x02,0x04,0x06,0x00] 83 84 ds_cmpst_b32 v2, v4, v6 85 // CHECK: ds_cmpst_b32 v2, v4, v6 ; encoding: [0x00,0x00,0x40,0xd8,0x02,0x04,0x06,0x00] 86 87 ds_cmpst_f32 v2, v4, v6 88 // CHECK: ds_cmpst_f32 v2, v4, v6 ; encoding: [0x00,0x00,0x44,0xd8,0x02,0x04,0x06,0x00] 89 90 ds_min_f32 v2, v4, v6 91 // CHECK: ds_min_f32 v2, v4, v6 ; encoding: [0x00,0x00,0x48,0xd8,0x02,0x04,0x06,0x00] 92 93 ds_max_f32 v2, v4, v6 94 // CHECK: ds_max_f32 v2, v4, v6 ; encoding: [0x00,0x00,0x4c,0xd8,0x02,0x04,0x06,0x00] 95 96 ds_gws_init v2 gds 97 // CHECK: ds_gws_init v2 gds ; encoding: [0x00,0x00,0x66,0xd8,0x02,0x00,0x00,0x00] 98 99 ds_gws_sema_v v2 gds 100 // CHECK: ds_gws_sema_v v2 gds ; encoding: [0x00,0x00,0x6a,0xd8,0x02,0x00,0x00,0x00] 101 102 ds_gws_sema_br v2 gds 103 // CHECK: ds_gws_sema_br v2 gds ; encoding: [0x00,0x00,0x6e,0xd8,0x02,0x00,0x00,0x00] 104 105 ds_gws_sema_p v2 gds 106 // CHECK: ds_gws_sema_p v2 gds ; encoding: [0x00,0x00,0x72,0xd8,0x02,0x00,0x00,0x00] 107 108 ds_gws_barrier v2 gds 109 // CHECK: ds_gws_barrier v2 gds ; encoding: [0x00,0x00,0x76,0xd8,0x02,0x00,0x00,0x00] 110 111 ds_write_b8 v2, v4 112 // CHECK: ds_write_b8 v2, v4 ; encoding: [0x00,0x00,0x78,0xd8,0x02,0x04,0x00,0x00] 113 114 ds_write_b16 v2, v4 115 // CHECK: ds_write_b16 v2, v4 ; encoding: [0x00,0x00,0x7c,0xd8,0x02,0x04,0x00,0x00] 116 117 ds_add_rtn_u32 v8, v2, v4 118 // CHECK: ds_add_rtn_u32 v8, v2, v4 ; encoding: [0x00,0x00,0x80,0xd8,0x02,0x04,0x00,0x08] 119 120 ds_sub_rtn_u32 v8, v2, v4 121 // CHECK: ds_sub_rtn_u32 v8, v2, v4 ; encoding: [0x00,0x00,0x84,0xd8,0x02,0x04,0x00,0x08] 122 123 ds_rsub_rtn_u32 v8, v2, v4 124 // CHECK: ds_rsub_rtn_u32 v8, v2, v4 ; encoding: [0x00,0x00,0x88,0xd8,0x02,0x04,0x00,0x08] 125 126 ds_inc_rtn_u32 v8, v2, v4 127 // CHECK: ds_inc_rtn_u32 v8, v2, v4 ; encoding: [0x00,0x00,0x8c,0xd8,0x02,0x04,0x00,0x08] 128 129 ds_dec_rtn_u32 v8, v2, v4 130 // CHECK: ds_dec_rtn_u32 v8, v2, v4 ; encoding: [0x00,0x00,0x90,0xd8,0x02,0x04,0x00,0x08] 131 132 ds_min_rtn_i32 v8, v2, v4 133 // CHECK: ds_min_rtn_i32 v8, v2, v4 ; encoding: [0x00,0x00,0x94,0xd8,0x02,0x04,0x00,0x08] 134 135 ds_max_rtn_i32 v8, v2, v4 136 // CHECK: ds_max_rtn_i32 v8, v2, v4 ; encoding: [0x00,0x00,0x98,0xd8,0x02,0x04,0x00,0x08] 137 138 ds_min_rtn_u32 v8, v2, v4 139 // CHECK: ds_min_rtn_u32 v8, v2, v4 ; encoding: [0x00,0x00,0x9c,0xd8,0x02,0x04,0x00,0x08] 140 141 ds_max_rtn_u32 v8, v2, v4 142 // CHECK: ds_max_rtn_u32 v8, v2, v4 ; encoding: [0x00,0x00,0xa0,0xd8,0x02,0x04,0x00,0x08] 143 144 ds_and_rtn_b32 v8, v2, v4 145 // CHECK: ds_and_rtn_b32 v8, v2, v4 ; encoding: [0x00,0x00,0xa4,0xd8,0x02,0x04,0x00,0x08] 146 147 ds_or_rtn_b32 v8, v2, v4 148 // CHECK: ds_or_rtn_b32 v8, v2, v4 ; encoding: [0x00,0x00,0xa8,0xd8,0x02,0x04,0x00,0x08] 149 150 ds_xor_rtn_b32 v8, v2, v4 151 // CHECK: ds_xor_rtn_b32 v8, v2, v4 ; encoding: [0x00,0x00,0xac,0xd8,0x02,0x04,0x00,0x08] 152 153 ds_mskor_rtn_b32 v8, v2, v4, v6 154 // CHECK: ds_mskor_rtn_b32 v8, v2, v4, v6 ; encoding: [0x00,0x00,0xb0,0xd8,0x02,0x04,0x06,0x08] 155 156 ds_wrxchg_rtn_b32 v8, v2, v4 157 // CHECK: ds_wrxchg_rtn_b32 v8, v2, v4 ; encoding: [0x00,0x00,0xb4,0xd8,0x02,0x04,0x00,0x08] 158 159 ds_wrxchg2_rtn_b32 v[8:9], v2, v4, v6 160 // CHECK: ds_wrxchg2_rtn_b32 v[8:9], v2, v4, v6 ; encoding: [0x00,0x00,0xb8,0xd8,0x02,0x04,0x06,0x08] 161 162 ds_wrxchg2st64_rtn_b32 v[8:9] v2, v4, v6 163 // CHECK: ds_wrxchg2st64_rtn_b32 v[8:9], v2, v4, v6 ; encoding: [0x00,0x00,0xbc,0xd8,0x02,0x04,0x06,0x08] 164 165 ds_cmpst_rtn_b32 v8, v2, v4, v6 166 // CHECK: ds_cmpst_rtn_b32 v8, v2, v4, v6 ; encoding: [0x00,0x00,0xc0,0xd8,0x02,0x04,0x06,0x08] 167 168 ds_cmpst_rtn_f32 v8, v2, v4, v6 169 // CHECK: ds_cmpst_rtn_f32 v8, v2, v4, v6 ; encoding: [0x00,0x00,0xc4,0xd8,0x02,0x04,0x06,0x08] 170 171 ds_min_rtn_f32 v8, v2, v4, v6 172 // CHECK: ds_min_rtn_f32 v8, v2, v4, v6 ; encoding: [0x00,0x00,0xc8,0xd8,0x02,0x04,0x06,0x08] 173 174 ds_max_rtn_f32 v8, v2, v4, v6 175 // CHECK: ds_max_rtn_f32 v8, v2, v4, v6 ; encoding: [0x00,0x00,0xcc,0xd8,0x02,0x04,0x06,0x08] 176 177 ds_swizzle_b32 v8, v2 178 // CHECK: ds_swizzle_b32 v8, v2 ; encoding: [0x00,0x00,0xd4,0xd8,0x02,0x00,0x00,0x08] 179 180 ds_read_b32 v8, v2 181 // CHECK: ds_read_b32 v8, v2 ; encoding: [0x00,0x00,0xd8,0xd8,0x02,0x00,0x00,0x08] 182 183 ds_read2_b32 v[8:9], v2 184 // CHECK: ds_read2_b32 v[8:9], v2 ; encoding: [0x00,0x00,0xdc,0xd8,0x02,0x00,0x00,0x08] 185 186 ds_read2st64_b32 v[8:9], v2 187 // CHECK: ds_read2st64_b32 v[8:9], v2 ; encoding: [0x00,0x00,0xe0,0xd8,0x02,0x00,0x00,0x08] 188 189 ds_read_i8 v8, v2 190 // CHECK: ds_read_i8 v8, v2 ; encoding: [0x00,0x00,0xe4,0xd8,0x02,0x00,0x00,0x08] 191 192 ds_read_u8 v8, v2 193 // CHECK: ds_read_u8 v8, v2 ; encoding: [0x00,0x00,0xe8,0xd8,0x02,0x00,0x00,0x08] 194 195 ds_read_i16 v8, v2 196 // CHECK: ds_read_i16 v8, v2 ; encoding: [0x00,0x00,0xec,0xd8,0x02,0x00,0x00,0x08] 197 198 ds_read_u16 v8, v2 199 // CHECK: ds_read_u16 v8, v2 ; encoding: [0x00,0x00,0xf0,0xd8,0x02,0x00,0x00,0x08] 200 201 ds_consume v8 202 // CHECK: ds_consume v8 ; encoding: [0x00,0x00,0xf4,0xd8,0x00,0x00,0x00,0x08] 203 204 ds_append v8 205 // CHECK: ds_append v8 ; encoding: [0x00,0x00,0xf8,0xd8,0x00,0x00,0x00,0x08] 206 207 ds_ordered_count v8, v2 gds 208 // CHECK: ds_ordered_count v8, v2 gds ; encoding: [0x00,0x00,0xfe,0xd8,0x02,0x00,0x00,0x08] 209 210 ds_add_u64 v2, v[4:5] 211 // CHECK: ds_add_u64 v2, v[4:5] ; encoding: [0x00,0x00,0x00,0xd9,0x02,0x04,0x00,0x00] 212 213 ds_sub_u64 v2, v[4:5] 214 // CHECK: ds_sub_u64 v2, v[4:5] ; encoding: [0x00,0x00,0x04,0xd9,0x02,0x04,0x00,0x00] 215 216 ds_rsub_u64 v2, v[4:5] 217 // CHECK: ds_rsub_u64 v2, v[4:5] ; encoding: [0x00,0x00,0x08,0xd9,0x02,0x04,0x00,0x00] 218 219 ds_inc_u64 v2, v[4:5] 220 // CHECK: ds_inc_u64 v2, v[4:5] ; encoding: [0x00,0x00,0x0c,0xd9,0x02,0x04,0x00,0x00] 221 222 ds_dec_u64 v2, v[4:5] 223 // CHECK: ds_dec_u64 v2, v[4:5] ; encoding: [0x00,0x00,0x10,0xd9,0x02,0x04,0x00,0x00] 224 225 ds_min_i64 v2, v[4:5] 226 // CHECK: ds_min_i64 v2, v[4:5] ; encoding: [0x00,0x00,0x14,0xd9,0x02,0x04,0x00,0x00] 227 228 ds_max_i64 v2, v[4:5] 229 // CHECK: ds_max_i64 v2, v[4:5] ; encoding: [0x00,0x00,0x18,0xd9,0x02,0x04,0x00,0x00] 230 231 ds_min_u64 v2, v[4:5] 232 // CHECK: ds_min_u64 v2, v[4:5] ; encoding: [0x00,0x00,0x1c,0xd9,0x02,0x04,0x00,0x00] 233 234 ds_max_u64 v2, v[4:5] 235 // CHECK: ds_max_u64 v2, v[4:5] ; encoding: [0x00,0x00,0x20,0xd9,0x02,0x04,0x00,0x00] 236 237 ds_and_b64 v2, v[4:5] 238 // CHECK: ds_and_b64 v2, v[4:5] ; encoding: [0x00,0x00,0x24,0xd9,0x02,0x04,0x00,0x00] 239 240 ds_or_b64 v2, v[4:5] 241 // CHECK: ds_or_b64 v2, v[4:5] ; encoding: [0x00,0x00,0x28,0xd9,0x02,0x04,0x00,0x00] 242 243 ds_xor_b64 v2, v[4:5] 244 // CHECK: ds_xor_b64 v2, v[4:5] ; encoding: [0x00,0x00,0x2c,0xd9,0x02,0x04,0x00,0x00] 245 246 ds_mskor_b64 v2, v[4:5], v[6:7] 247 // CHECK: ds_mskor_b64 v2, v[4:5], v[6:7] ; encoding: [0x00,0x00,0x30,0xd9,0x02,0x04,0x06,0x00] 248 249 ds_write_b64 v2, v[4:5] 250 // CHECK: ds_write_b64 v2, v[4:5] ; encoding: [0x00,0x00,0x34,0xd9,0x02,0x04,0x00,0x00] 251 252 ds_write2_b64 v2, v[4:5], v[6:7] 253 // CHECK: ds_write2_b64 v2, v[4:5], v[6:7] ; encoding: [0x00,0x00,0x38,0xd9,0x02,0x04,0x06,0x00] 254 255 ds_write2st64_b64 v2, v[4:5], v[6:7] 256 // CHECK: ds_write2st64_b64 v2, v[4:5], v[6:7] ; encoding: [0x00,0x00,0x3c,0xd9,0x02,0x04,0x06,0x00] 257 258 ds_cmpst_b64 v2, v[4:5], v[6:7] 259 // CHECK: ds_cmpst_b64 v2, v[4:5], v[6:7] ; encoding: [0x00,0x00,0x40,0xd9,0x02,0x04,0x06,0x00] 260 261 ds_cmpst_f64 v2, v[4:5], v[6:7] 262 // CHECK: ds_cmpst_f64 v2, v[4:5], v[6:7] ; encoding: [0x00,0x00,0x44,0xd9,0x02,0x04,0x06,0x00] 263 264 ds_min_f64 v2, v[4:5] 265 // CHECK: ds_min_f64 v2, v[4:5] ; encoding: [0x00,0x00,0x48,0xd9,0x02,0x04,0x00,0x00] 266 267 ds_max_f64 v2, v[4:5] 268 // CHECK: ds_max_f64 v2, v[4:5] ; encoding: [0x00,0x00,0x4c,0xd9,0x02,0x04,0x00,0x00] 269 270 ds_add_rtn_u64 v[8:9], v2, v[4:5] 271 // CHECK: ds_add_rtn_u64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0x80,0xd9,0x02,0x04,0x00,0x08] 272 273 ds_sub_rtn_u64 v[8:9], v2, v[4:5] 274 // CHECK: ds_sub_rtn_u64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0x84,0xd9,0x02,0x04,0x00,0x08] 275 276 ds_rsub_rtn_u64 v[8:9], v2, v[4:5] 277 // CHECK: ds_rsub_rtn_u64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0x88,0xd9,0x02,0x04,0x00,0x08] 278 279 ds_inc_rtn_u64 v[8:9], v2, v[4:5] 280 // CHECK: ds_inc_rtn_u64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0x8c,0xd9,0x02,0x04,0x00,0x08] 281 282 ds_dec_rtn_u64 v[8:9] v2, v[4:5] 283 // CHECK: ds_dec_rtn_u64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0x90,0xd9,0x02,0x04,0x00,0x08] 284 285 ds_min_rtn_i64 v[8:9], v2, v[4:5] 286 // CHECK: ds_min_rtn_i64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0x94,0xd9,0x02,0x04,0x00,0x08] 287 288 ds_max_rtn_i64 v[8:9], v2, v[4:5] 289 // CHECK: ds_max_rtn_i64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0x98,0xd9,0x02,0x04,0x00,0x08] 290 291 ds_min_rtn_u64 v[8:9], v2, v[4:5] 292 // CHECK: ds_min_rtn_u64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0x9c,0xd9,0x02,0x04,0x00,0x08] 293 294 ds_max_rtn_u64 v[8:9], v2, v[4:5] 295 // CHECK: ds_max_rtn_u64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0xa0,0xd9,0x02,0x04,0x00,0x08] 296 297 ds_and_rtn_b64 v[8:9], v2, v[4:5] 298 // CHECK: ds_and_rtn_b64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0xa4,0xd9,0x02,0x04,0x00,0x08] 299 300 ds_or_rtn_b64 v[8:9], v2, v[4:5] 301 // CHECK: ds_or_rtn_b64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0xa8,0xd9,0x02,0x04,0x00,0x08] 302 303 ds_xor_rtn_b64 v[8:9], v2, v[4:5] 304 // CHECK: ds_xor_rtn_b64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0xac,0xd9,0x02,0x04,0x00,0x08] 305 306 ds_mskor_rtn_b64 v[8:9], v2, v[4:5], v[6:7] 307 // CHECK: ds_mskor_rtn_b64 v[8:9], v2, v[4:5], v[6:7] ; encoding: [0x00,0x00,0xb0,0xd9,0x02,0x04,0x06,0x08] 308 309 ds_wrxchg_rtn_b64 v[8:9], v2, v[4:5] 310 // CHECK: ds_wrxchg_rtn_b64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0xb4,0xd9,0x02,0x04,0x00,0x08] 311 312 ds_wrxchg2_rtn_b64 v[8:11], v2, v[4:5], v[6:7] 313 // CHECK: ds_wrxchg2_rtn_b64 v[8:11], v2, v[4:5], v[6:7] ; encoding: [0x00,0x00,0xb8,0xd9,0x02,0x04,0x06,0x08] 314 315 ds_wrxchg2st64_rtn_b64 v[8:11], v2, v[4:5], v[6:7] 316 // CHECK: ds_wrxchg2st64_rtn_b64 v[8:11], v2, v[4:5], v[6:7] ; encoding: [0x00,0x00,0xbc,0xd9,0x02,0x04,0x06,0x08] 317 318 ds_cmpst_rtn_b64 v[8:9], v2, v[4:5], v[6:7] 319 // CHECK: ds_cmpst_rtn_b64 v[8:9], v2, v[4:5], v[6:7] ; encoding: [0x00,0x00,0xc0,0xd9,0x02,0x04,0x06,0x08] 320 321 ds_cmpst_rtn_f64 v[8:9], v2, v[4:5], v[6:7] 322 // CHECK: ds_cmpst_rtn_f64 v[8:9], v2, v[4:5], v[6:7] ; encoding: [0x00,0x00,0xc4,0xd9,0x02,0x04,0x06,0x08] 323 324 ds_min_rtn_f64 v[8:9], v2, v[4:5] 325 // CHECK: ds_min_rtn_f64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0xc8,0xd9,0x02,0x04,0x00,0x08] 326 327 ds_max_rtn_f64 v[8:9], v2, v[4:5] 328 // CHECK: ds_max_rtn_f64 v[8:9], v2, v[4:5] ; encoding: [0x00,0x00,0xcc,0xd9,0x02,0x04,0x00,0x08] 329 330 ds_read_b64 v[8:9], v2 331 // CHECK: ds_read_b64 v[8:9], v2 ; encoding: [0x00,0x00,0xd8,0xd9,0x02,0x00,0x00,0x08] 332 333 ds_read2_b64 v[8:11], v2 334 // CHECK: ds_read2_b64 v[8:11], v2 ; encoding: [0x00,0x00,0xdc,0xd9,0x02,0x00,0x00,0x08] 335 336 ds_read2st64_b64 v[8:11], v2 337 // CHECK: ds_read2st64_b64 v[8:11], v2 ; encoding: [0x00,0x00,0xe0,0xd9,0x02,0x00,0x00,0x08] 338