Home | History | Annotate | Download | only in AMDGPU
      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