1 // RUN: not llvm-mc -arch=amdgcn -show-encoding %s | FileCheck %s --check-prefix=GCN --check-prefix=SICI 2 // RUN: not llvm-mc -arch=amdgcn -mcpu=tahiti -show-encoding %s | FileCheck %s --check-prefix=GCN --check-prefix=SICI 3 // RUN: not llvm-mc -arch=amdgcn -mcpu=bonaire -show-encoding %s | FileCheck %s --check-prefix=GCN --check-prefix=SICI 4 // RUN: not llvm-mc -arch=amdgcn -mcpu=tonga -show-encoding %s | FileCheck %s --check-prefix=GCN --check-prefix=CIVI --check-prefix=VI 5 6 // RUN: not llvm-mc -arch=amdgcn -show-encoding %s 2>&1 | FileCheck %s --check-prefix=NOSICI 7 // RUN: not llvm-mc -arch=amdgcn -mcpu=tahiti -show-encoding %s 2>&1 | FileCheck %s --check-prefix=NOSICI 8 // RUN: not llvm-mc -arch=amdgcn -mcpu=bonaire -show-encoding %s 2>&1 | FileCheck %s --check-prefix=NOSICI 9 // RUN: not llvm-mc -arch=amdgcn -mcpu=tonga -show-encoding %s 2>&1 | FileCheck %s -check-prefix=NOVI 10 11 v_mov_b32 [v1], [v2] 12 // GCN: v_mov_b32_e32 v1, v2 ; encoding: [0x02,0x03,0x02,0x7e] 13 14 v_mov_b32 v0, 0.5 15 // GCN: v_mov_b32_e32 v0, 0.5 ; encoding: [0xf0,0x02,0x00,0x7e] 16 17 v_mov_b32_e32 v0, 3.125 18 // GCN: v_mov_b32_e32 v0, 0x40480000 ; encoding: [0xff,0x02,0x00,0x7e,0x00,0x00,0x48,0x40] 19 20 v_mov_b32 v1, ttmp8 21 // SICI: v_mov_b32_e32 v1, ttmp8 ; encoding: [0x78,0x02,0x02,0x7e] 22 // VI: v_mov_b32_e32 v1, ttmp8 ; encoding: [0x78,0x02,0x02,0x7e] 23 24 // GCN: v_mov_b32_e32 v1, v2 ; encoding: [0x02,0x03,0x02,0x7e] 25 v_mov_b32 v1, v2 26 27 // SICI: v_not_b32_e32 v1, v2 ; encoding: [0x02,0x6f,0x02,0x7e] 28 // VI: v_not_b32_e32 v1, v2 ; encoding: [0x02,0x57,0x02,0x7e] 29 v_not_b32 v1, v2 30 31 // SICI: v_bfrev_b32_e32 v1, v2 ; encoding: [0x02,0x71,0x02,0x7e] 32 // VI: v_bfrev_b32_e32 v1, v2 ; encoding: [0x02,0x59,0x02,0x7e] 33 v_bfrev_b32 v1, v2 34 35 // SICI: v_ffbh_u32_e32 v1, v2 ; encoding: [0x02,0x73,0x02,0x7e] 36 // VI: v_ffbh_u32_e32 v1, v2 ; encoding: [0x02,0x5b,0x02,0x7e] 37 v_ffbh_u32 v1, v2 38 39 // SICI: v_ffbl_b32_e32 v1, v2 ; encoding: [0x02,0x75,0x02,0x7e] 40 // VI: v_ffbl_b32_e32 v1, v2 ; encoding: [0x02,0x5d,0x02,0x7e] 41 v_ffbl_b32 v1, v2 42 43 // SICI: v_ffbh_i32_e32 v1, v2 ; encoding: [0x02,0x77,0x02,0x7e] 44 // VI: v_ffbh_i32_e32 v1, v2 ; encoding: [0x02,0x5f,0x02,0x7e] 45 v_ffbh_i32_e32 v1, v2 46 47 // SICI: v_frexp_exp_i32_f64_e32 v1, v[2:3] ; encoding: [0x02,0x79,0x02,0x7e] 48 // VI: v_frexp_exp_i32_f64_e32 v1, v[2:3] ; encoding: [0x02,0x61,0x02,0x7e] 49 v_frexp_exp_i32_f64 v1, v[2:3] 50 51 // SICI: v_frexp_mant_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x7b,0x02,0x7e] 52 // VI; v_frexp_mant_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x63,0x02,0x7e] 53 v_frexp_mant_f64 v[1:2], v[2:3] 54 55 // SICI: v_fract_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x7d,0x02,0x7e] 56 // VI: v_fract_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x65,0x02,0x7e] 57 v_fract_f64 v[1:2], v[2:3] 58 59 // SICI: v_frexp_exp_i32_f32_e32 v1, v2 ; encoding: [0x02,0x7f,0x02,0x7e] 60 // VI: v_frexp_exp_i32_f32_e32 v1, v2 ; encoding: [0x02,0x67,0x02,0x7e] 61 v_frexp_exp_i32_f32 v1, v2 62 63 // SICI: v_frexp_mant_f32_e32 v1, v2 ; encoding: [0x02,0x81,0x02,0x7e] 64 // VI: v_frexp_mant_f32_e32 v1, v2 ; encoding: [0x02,0x69,0x02,0x7e] 65 v_frexp_mant_f32 v1, v2 66 67 // SICI: v_clrexcp ; encoding: [0x00,0x82,0x00,0x7e] 68 // VI: v_clrexcp ; encoding: [0x00,0x6a,0x00,0x7e] 69 v_clrexcp 70 71 // SICI: v_movreld_b32_e32 v1, v2 ; encoding: [0x02,0x85,0x02,0x7e] 72 // VI: v_movreld_b32_e32 v1, v2 ; encoding: [0x02,0x6d,0x02,0x7e] 73 v_movreld_b32 v1, v2 74 75 // SICI: v_movrels_b32_e32 v1, v2 ; encoding: [0x02,0x87,0x02,0x7e] 76 // VI: v_movrels_b32_e32 v1, v2 ; encoding: [0x02,0x6f,0x02,0x7e] 77 v_movrels_b32 v1, v2 78 79 // SICI: v_movrelsd_b32_e32 v1, v2 ; encoding: [0x02,0x89,0x02,0x7e] 80 // VI: v_movrelsd_b32_e32 v1, v2 ; encoding: [0x02,0x71,0x02,0x7e] 81 v_movrelsd_b32 v1, v2 82 83 // NOSICI: error: instruction not supported on this GPU 84 // NOSICI: v_cvt_f16_u16 v1, v2 85 // VI: v_cvt_f16_u16_e32 v1, v2 ; encoding: [0x02,0x73,0x02,0x7e] 86 v_cvt_f16_u16 v1, v2 87 88 // NOSICI: error: instruction not supported on this GPU 89 // NOSICI: v_cvt_f16_i16 v1, v2 90 // VI: v_cvt_f16_i16_e32 v1, v2 ; encoding: [0x02,0x75,0x02,0x7e] 91 v_cvt_f16_i16 v1, v2 92 93 // NOSICI: error: instruction not supported on this GPU 94 // NOSICI: v_cvt_u16_f16 v1, v2 95 // VI: v_cvt_u16_f16_e32 v1, v2 ; encoding: [0x02,0x77,0x02,0x7e] 96 v_cvt_u16_f16 v1, v2 97 98 // NOSICI: error: instruction not supported on this GPU 99 // NOSICI: v_cvt_i16_f16 v1, v2 100 // VI: v_cvt_i16_f16_e32 v1, v2 ; encoding: [0x02,0x79,0x02,0x7e] 101 v_cvt_i16_f16 v1, v2 102 103 // NOSICI: error: instruction not supported on this GPU 104 // NOSICI: v_rcp_f16 v1, v2 105 // VI: v_rcp_f16_e32 v1, v2 ; encoding: [0x02,0x7b,0x02,0x7e] 106 v_rcp_f16 v1, v2 107 108 // NOSICI: error: instruction not supported on this GPU 109 // NOSICI: v_sqrt_f16 v1, v2 110 // VI: v_sqrt_f16_e32 v1, v2 ; encoding: [0x02,0x7d,0x02,0x7e] 111 v_sqrt_f16 v1, v2 112 113 // NOSICI: error: instruction not supported on this GPU 114 // NOSICI: v_rsq_f16 v1, v2 115 // VI: v_rsq_f16_e32 v1, v2 ; encoding: [0x02,0x7f,0x02,0x7e] 116 v_rsq_f16 v1, v2 117 118 // NOSICI: error: instruction not supported on this GPU 119 // NOSICI: v_log_f16 v1, v2 120 // VI: v_log_f16_e32 v1, v2 ; encoding: [0x02,0x81,0x02,0x7e] 121 v_log_f16 v1, v2 122 123 // NOSICI: error: instruction not supported on this GPU 124 // NOSICI: v_exp_f16 v1, v2 125 // VI: v_exp_f16_e32 v1, v2 ; encoding: [0x02,0x83,0x02,0x7e] 126 v_exp_f16 v1, v2 127 128 // NOSICI: error: instruction not supported on this GPU 129 // NOSICI: v_frexp_mant_f16 v1, v2 130 // VI: v_frexp_mant_f16_e32 v1, v2 ; encoding: [0x02,0x85,0x02,0x7e] 131 v_frexp_mant_f16 v1, v2 132 133 // NOSICI: error: instruction not supported on this GPU 134 // NOSICI: v_frexp_exp_i16_f16 v1, v2 135 // VI: v_frexp_exp_i16_f16_e32 v1, v2 ; encoding: [0x02,0x87,0x02,0x7e] 136 v_frexp_exp_i16_f16 v1, v2 137 138 // NOSICI: error: instruction not supported on this GPU 139 // NOSICI: v_floor_f16 v1, v2 140 // VI: v_floor_f16_e32 v1, v2 ; encoding: [0x02,0x89,0x02,0x7e] 141 v_floor_f16 v1, v2 142 143 // NOSICI: error: instruction not supported on this GPU 144 // NOSICI: v_ceil_f16 v1, v2 145 // VI: v_ceil_f16_e32 v1, v2 ; encoding: [0x02,0x8b,0x02,0x7e] 146 v_ceil_f16 v1, v2 147 148 // NOSICI: error: instruction not supported on this GPU 149 // NOSICI: v_trunc_f16 v1, v2 150 // VI: v_trunc_f16_e32 v1, v2 ; encoding: [0x02,0x8d,0x02,0x7e] 151 v_trunc_f16 v1, v2 152 153 // NOSICI: error: instruction not supported on this GPU 154 // NOSICI: v_rndne_f16 v1, v2 155 // VI: v_rndne_f16_e32 v1, v2 ; encoding: [0x02,0x8f,0x02,0x7e] 156 v_rndne_f16 v1, v2 157 158 // NOSICI: error: instruction not supported on this GPU 159 // NOSICI: v_fract_f16 v1, v2 160 // VI: v_fract_f16_e32 v1, v2 ; encoding: [0x02,0x91,0x02,0x7e] 161 v_fract_f16 v1, v2 162 163 // NOSICI: error: instruction not supported on this GPU 164 // NOSICI: v_sin_f16 v1, v2 165 // VI: v_sin_f16_e32 v1, v2 ; encoding: [0x02,0x93,0x02,0x7e] 166 v_sin_f16 v1, v2 167 168 // NOSICI: error: instruction not supported on this GPU 169 // NOSICI: v_cos_f16 v1, v2 170 // VI: v_cos_f16_e32 v1, v2 ; encoding: [0x02,0x95,0x02,0x7e] 171 v_cos_f16 v1, v2 172 173 // src0 inline 174 // SICI: v_mul_i32_i24_e32 v1, 3, v3 ; encoding: [0x83,0x06,0x02,0x12] 175 v_mul_i32_i24 v1, 3, v3 176 177 // src0 negative inline 178 // SICI: v_mul_i32_i24_e32 v1, -3, v3 ; encoding: [0xc3,0x06,0x02,0x12] 179 v_mul_i32_i24 v1, -3, v3 180 181 // src1 inline 182 // SICI: v_mul_i32_i24_e64 v1, v2, 3 ; encoding: [0x01,0x00,0x12,0xd2,0x02,0x07,0x01,0x00] 183 v_mul_i32_i24 v1, v2, 3 184 185 // src1 negative inline 186 // SICI: v_mul_i32_i24_e64 v1, v2, -3 ; encoding: [0x01,0x00,0x12,0xd2,0x02,0x87,0x01,0x00] 187 v_mul_i32_i24 v1, v2, -3 188 189 // GCN: v_cvt_flr_i32_f32_e32 v1, v2 ; encoding: [0x02,0x1b,0x02,0x7e] 190 v_cvt_flr_i32_f32 v1, v2 191 192 // GCN: v_cvt_off_f32_i4_e32 v1, v2 ; encoding: [0x02,0x1d,0x02,0x7e] 193 v_cvt_off_f32_i4_e32 v1, v2 194 195 // GCN: v_cvt_f32_f64_e32 v1, v[2:3] ; encoding: [0x02,0x1f,0x02,0x7e] 196 v_cvt_f32_f64 v1, v[2:3] 197 198 // GCN: v_cvt_f64_f32_e32 v[1:2], v2 ; encoding: [0x02,0x21,0x02,0x7e] 199 v_cvt_f64_f32 v[1:2], v2 200 201 // GCN: v_cvt_f32_ubyte0_e32 v1, v2 ; encoding: [0x02,0x23,0x02,0x7e] 202 v_cvt_f32_ubyte0 v1, v2 203 204 // GCN: v_cvt_f32_ubyte1_e32 v1, v2 ; encoding: [0x02,0x25,0x02,0x7e] 205 v_cvt_f32_ubyte1_e32 v1, v2 206 207 // GCN: v_cvt_f32_ubyte2_e32 v1, v2 ; encoding: [0x02,0x27,0x02,0x7e] 208 v_cvt_f32_ubyte2 v1, v2 209 210 // GCN: v_cvt_f32_ubyte3_e32 v1, v2 ; encoding: [0x02,0x29,0x02,0x7e] 211 v_cvt_f32_ubyte3 v1, v2 212 213 // GCN: v_cvt_u32_f64_e32 v1, v[2:3] ; encoding: [0x02,0x2b,0x02,0x7e] 214 v_cvt_u32_f64 v1, v[2:3] 215 216 // GCN: v_cvt_f64_u32_e32 v[1:2], v2 ; encoding: [0x02,0x2d,0x02,0x7e] 217 v_cvt_f64_u32 v[1:2], v2 218 219 // SICI: v_mul_i32_i24_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x12] 220 // VI: v_mul_i32_i24_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x0c] 221 v_mul_i32_i24 v1, v2, v3 222 223 // SICI: v_mul_hi_i32_i24_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x14] 224 // VI: v_mul_hi_i32_i24_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x0e] 225 v_mul_hi_i32_i24 v1, v2, v3 226 227 // SICI: v_mul_u32_u24_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x16] 228 // VI: v_mul_u32_u24_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x10] 229 v_mul_u32_u24 v1, v2, v3 230 231 // SICI: v_mul_hi_u32_u24_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x18] 232 // VI: v_mul_hi_u32_u24_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x12] 233 v_mul_hi_u32_u24 v1, v2, v3 234 235 // SICI: v_min_i32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x22] 236 // VI: v_min_i32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x18] 237 v_min_i32 v1, v2, v3 238 239 // SICI: v_max_i32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x24] 240 // VI: v_max_i32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x1a] 241 v_max_i32 v1, v2, v3 242 243 // SICI: v_min_u32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x26] 244 // VI: v_min_u32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x1c] 245 v_min_u32 v1, v2, v3 246 247 // SICI: v_max_u32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x28] 248 // VI: v_max_u32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x1e] 249 v_max_u32 v1, v2, v3 250 251 // SICI: v_lshr_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x2a] 252 // NOVI: error: instruction not supported on this GPU 253 // NOVI: v_lshr_b32 v1, v2, v3 254 v_lshr_b32 v1, v2, v3 255 256 // SICI: v_lshrrev_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x2c] 257 // VI: v_lshrrev_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x20] 258 v_lshrrev_b32 v1, v2, v3 259 260 // SICI: v_ashr_i32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x2e] 261 // NOVI: error: instruction not supported on this GPU 262 // NOVI: v_ashr_i32 v1, v2, v3 263 v_ashr_i32 v1, v2, v3 264 265 // SICI: v_ashrrev_i32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x30] 266 // VI: v_ashrrev_i32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x22] 267 v_ashrrev_i32 v1, v2, v3 268 269 // SICI: v_lshl_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x32] 270 // NOVI: error: instruction not supported on this GPU 271 // NOVI: v_lshl_b32_e32 v1, v2, v3 272 v_lshl_b32_e32 v1, v2, v3 273 274 // SICI: v_lshlrev_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x34] 275 // VI: v_lshlrev_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x24] 276 v_lshlrev_b32 v1, v2, v3 277 278 // SICI: v_and_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x36] 279 // VI: v_and_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x26] 280 v_and_b32 v1, v2, v3 281 282 // SICI: v_or_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x38] 283 // VI: v_or_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x28] 284 v_or_b32 v1, v2, v3 285 286 // SICI: v_xor_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x3a] 287 // VI: v_xor_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x2a] 288 v_xor_b32 v1, v2, v3 289 290 // SICI: v_bfm_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x3c] 291 // VI: v_bfm_b32 v1, v2, v3 ; encoding: [0x01,0x00,0x93,0xd2,0x02,0x07,0x02,0x00] 292 v_bfm_b32 v1, v2, v3 293 294 // SICI: v_bcnt_u32_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x44] 295 // VI: v_bcnt_u32_b32 v1, v2, v3 ; encoding: [0x01,0x00,0x8b,0xd2,0x02,0x07,0x02,0x00] 296 v_bcnt_u32_b32 v1, v2, v3 297 298 // SICI: v_mbcnt_lo_u32_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x46] 299 // VI: v_mbcnt_lo_u32_b32 v1, v2, v3 ; encoding: [0x01,0x00,0x8c,0xd2,0x02,0x07,0x02,0x00] 300 v_mbcnt_lo_u32_b32 v1, v2, v3 301 302 // SICI: v_mbcnt_hi_u32_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x48] 303 // VI: v_mbcnt_hi_u32_b32 v1, v2, v3 ; encoding: [0x01,0x00,0x8d,0xd2,0x02,0x07,0x02,0x00] 304 v_mbcnt_hi_u32_b32 v1, v2, v3 305 306 // SICI: v_cvt_pk_u16_u32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x60] 307 // VI: v_cvt_pk_u16_u32 v1, v2, v3 ; encoding: [0x01,0x00,0x97,0xd2,0x02,0x07,0x02,0x00] 308 v_cvt_pk_u16_u32 v1, v2, v3 309 310 // SICI: v_cvt_pk_i16_i32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x62] 311 // VI: v_cvt_pk_i16_i32 v1, v2, v3 ; encoding: [0x01,0x00,0x98,0xd2,0x02,0x07,0x02,0x00] 312 v_cvt_pk_i16_i32 v1, v2, v3 313 314 // SICI: v_bfm_b32_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x3c] 315 // VI: v_bfm_b32 v1, v2, v3 ; encoding: [0x01,0x00,0x93,0xd2,0x02,0x07,0x02,0x00] 316 v_bfm_b32 v1, v2, v3 317 318 // NOSICI: error: instruction not supported on this GPU 319 // NOSICI: v_add_f16 v1, v2, v3 320 // VI: v_add_f16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x3e] 321 v_add_f16 v1, v2, v3 322 323 // NOSICI: error: instruction not supported on this GPU 324 // NOSICI: v_sub_f16 v1, v2, v3 325 // VI: v_sub_f16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x40] 326 v_sub_f16 v1, v2, v3 327 328 // NOSICI: error: instruction not supported on this GPU 329 // NOSICI: v_subrev_f16 v1, v2, v3 330 // VI: v_subrev_f16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x42] 331 v_subrev_f16 v1, v2, v3 332 333 // NOSICI: error: instruction not supported on this GPU 334 // NOSICI: v_mul_f16 v1, v2, v3 335 // VI: v_mul_f16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x44] 336 v_mul_f16 v1, v2, v3 337 338 // NOSICI: error: instruction not supported on this GPU 339 // NOSICI: v_mac_f16 v1, v2, v3 340 // VI: v_mac_f16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x46] 341 v_mac_f16 v1, v2, v3 342 343 // NOSICI: error: instruction not supported on this GPU 344 // NOSICI: v_add_u16 v1, v2, v3 345 // VI: v_add_u16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x4c] 346 v_add_u16 v1, v2, v3 347 348 // NOSICI: error: instruction not supported on this GPU 349 // NOSICI: v_sub_u16 v1, v2, v3 350 // VI: v_sub_u16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x4e] 351 v_sub_u16 v1, v2, v3 352 353 // NOSICI: error: instruction not supported on this GPU 354 // NOSICI: v_subrev_u16 v1, v2, v3 355 // VI: v_subrev_u16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x50] 356 v_subrev_u16 v1, v2, v3 357 358 // NOSICI: error: instruction not supported on this GPU 359 // NOSICI: v_mul_lo_u16 v1, v2, v3 360 // VI: v_mul_lo_u16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x52] 361 v_mul_lo_u16 v1, v2, v3 362 363 // NOSICI: error: instruction not supported on this GPU 364 // NOSICI: v_lshlrev_b16 v1, v2, v3 365 // VI: v_lshlrev_b16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x54] 366 v_lshlrev_b16 v1, v2, v3 367 368 // NOSICI: error: instruction not supported on this GPU 369 // NOSICI: v_lshrrev_b16 v1, v2, v3 370 // VI: v_lshrrev_b16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x56] 371 v_lshrrev_b16 v1, v2, v3 372 373 // NOSICI: error: instruction not supported on this GPU 374 // NOSICI: v_ashrrev_i16 v1, v2, v3 375 // VI: v_ashrrev_i16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x58] 376 v_ashrrev_i16 v1, v2, v3 377 378 // NOSICI: error: instruction not supported on this GPU 379 // NOSICI: v_max_f16 v1, v2, v3 380 // VI: v_max_f16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x5a] 381 v_max_f16 v1, v2, v3 382 383 // NOSICI: error: instruction not supported on this GPU 384 // NOSICI: v_min_f16 v1, v2, v3 385 // VI: v_min_f16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x5c] 386 v_min_f16 v1, v2, v3 387 388 // NOSICI: error: instruction not supported on this GPU 389 // NOSICI: v_max_u16 v1, v2, v3 390 // VI: v_max_u16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x5e] 391 v_max_u16 v1, v2, v3 392 393 // NOSICI: error: instruction not supported on this GPU 394 // NOSICI: v_max_i16 v1, v2, v3 395 // VI: v_max_i16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x60] 396 v_max_i16 v1, v2, v3 397 398 // NOSICI: error: instruction not supported on this GPU 399 // NOSICI: v_min_u16 v1, v2, v3 400 // VI: v_min_u16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x62] 401 v_min_u16 v1, v2, v3 402 403 // NOSICI: error: instruction not supported on this GPU 404 // NOSICI: v_min_i16 v1, v2, v3 405 // VI: v_min_i16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x64] 406 v_min_i16 v1, v2, v3 407 408 // NOSICI: error: instruction not supported on this GPU 409 // NOSICI: v_ldexp_f16 v1, v2, v3 410 // VI: v_ldexp_f16_e32 v1, v2, v3 ; encoding: [0x02,0x07,0x02,0x66] 411 v_ldexp_f16 v1, v2, v3 412