1// RUN: llvm-mc -arch=amdgcn -mcpu=gfx908 -show-encoding %s | FileCheck %s 2 3// CHECK: encoding: [0x01,0x05,0x0a,0x6e] 4v_dot2c_f32_f16 v5, v1, v2 5 6// CHECK: encoding: [0x01,0x05,0xfe,0x6f] 7v_dot2c_f32_f16 v255, v1, v2 8 9// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x00,0x00] 10v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 11 12// CHECK: encoding: [0xfa,0x04,0xfe,0x6f,0x01,0xe4,0x00,0x00] 13v_dot2c_f32_f16_dpp v255, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 14 15// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0xff,0xe4,0x00,0x00] 16v_dot2c_f32_f16_dpp v5, v255, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 17 18// CHECK: encoding: [0xfa,0xfe,0x0b,0x6e,0x01,0xe4,0x00,0x00] 19v_dot2c_f32_f16_dpp v5, v1, v255 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 20 21// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x1b,0x00,0x00] 22v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[3,2,1,0] row_mask:0x0 bank_mask:0x0 23 24// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x40,0x01,0x00] 25v_dot2c_f32_f16_dpp v5, v1, v2 row_mirror row_mask:0x0 bank_mask:0x0 26 27// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x41,0x01,0x00] 28v_dot2c_f32_f16_dpp v5, v1, v2 row_half_mirror row_mask:0x0 bank_mask:0x0 29 30// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x42,0x01,0x00] 31v_dot2c_f32_f16_dpp v5, v1, v2 row_bcast:15 row_mask:0x0 bank_mask:0x0 32 33// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x43,0x01,0x00] 34v_dot2c_f32_f16_dpp v5, v1, v2 row_bcast:31 row_mask:0x0 bank_mask:0x0 35 36// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x30,0x01,0x00] 37v_dot2c_f32_f16_dpp v5, v1, v2 wave_shl:1 row_mask:0x0 bank_mask:0x0 38 39// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x34,0x01,0x00] 40v_dot2c_f32_f16_dpp v5, v1, v2 wave_rol:1 row_mask:0x0 bank_mask:0x0 41 42// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x38,0x01,0x00] 43v_dot2c_f32_f16_dpp v5, v1, v2 wave_shr:1 row_mask:0x0 bank_mask:0x0 44 45// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x3c,0x01,0x00] 46v_dot2c_f32_f16_dpp v5, v1, v2 wave_ror:1 row_mask:0x0 bank_mask:0x0 47 48// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x01,0x01,0x00] 49v_dot2c_f32_f16_dpp v5, v1, v2 row_shl:1 row_mask:0x0 bank_mask:0x0 50 51// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x0f,0x01,0x00] 52v_dot2c_f32_f16_dpp v5, v1, v2 row_shl:15 row_mask:0x0 bank_mask:0x0 53 54// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x11,0x01,0x00] 55v_dot2c_f32_f16_dpp v5, v1, v2 row_shr:1 row_mask:0x0 bank_mask:0x0 56 57// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x1f,0x01,0x00] 58v_dot2c_f32_f16_dpp v5, v1, v2 row_shr:15 row_mask:0x0 bank_mask:0x0 59 60// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x21,0x01,0x00] 61v_dot2c_f32_f16_dpp v5, v1, v2 row_ror:1 row_mask:0x0 bank_mask:0x0 62 63// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0x2f,0x01,0x00] 64v_dot2c_f32_f16_dpp v5, v1, v2 row_ror:15 row_mask:0x0 bank_mask:0x0 65 66// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x00,0x10] 67v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x1 bank_mask:0x0 68 69// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x00,0x30] 70v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x3 bank_mask:0x0 71 72// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x00,0xf0] 73v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0xf bank_mask:0x0 74 75// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x00,0xf0] 76v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[0,1,2,3] bank_mask:0x0 77 78// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x00,0x01] 79v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x1 80 81// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x00,0x03] 82v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x3 83 84// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x00,0x0f] 85v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0xf 86 87// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x00,0x0f] 88v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 89 90// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x08,0x00] 91v_dot2c_f32_f16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 bound_ctrl:0 92 93// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x10,0x00] 94v_dot2c_f32_f16_dpp v5, -v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 95 96// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x20,0x00] 97v_dot2c_f32_f16_dpp v5, |v1|, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 98 99// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x40,0x00] 100v_dot2c_f32_f16_dpp v5, v1, -v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 101 102// CHECK: encoding: [0xfa,0x04,0x0a,0x6e,0x01,0xe4,0x80,0x00] 103v_dot2c_f32_f16_dpp v5, v1, |v2| quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 104 105// CHECK: encoding: [0x01,0x05,0x0a,0x70] 106v_dot2c_i32_i16 v5, v1, v2 107 108// CHECK: encoding: [0x01,0x05,0xfe,0x71] 109v_dot2c_i32_i16 v255, v1, v2 110 111// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0xe4,0x00,0x00] 112v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 113 114// CHECK: encoding: [0xfa,0x04,0xfe,0x71,0x01,0xe4,0x00,0x00] 115v_dot2c_i32_i16_dpp v255, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 116 117// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0xff,0xe4,0x00,0x00] 118v_dot2c_i32_i16_dpp v5, v255, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 119 120// CHECK: encoding: [0xfa,0xfe,0x0b,0x70,0x01,0xe4,0x00,0x00] 121v_dot2c_i32_i16_dpp v5, v1, v255 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 122 123// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x1b,0x00,0x00] 124v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[3,2,1,0] row_mask:0x0 bank_mask:0x0 125 126// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x40,0x01,0x00] 127v_dot2c_i32_i16_dpp v5, v1, v2 row_mirror row_mask:0x0 bank_mask:0x0 128 129// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x41,0x01,0x00] 130v_dot2c_i32_i16_dpp v5, v1, v2 row_half_mirror row_mask:0x0 bank_mask:0x0 131 132// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x42,0x01,0x00] 133v_dot2c_i32_i16_dpp v5, v1, v2 row_bcast:15 row_mask:0x0 bank_mask:0x0 134 135// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x43,0x01,0x00] 136v_dot2c_i32_i16_dpp v5, v1, v2 row_bcast:31 row_mask:0x0 bank_mask:0x0 137 138// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x30,0x01,0x00] 139v_dot2c_i32_i16_dpp v5, v1, v2 wave_shl:1 row_mask:0x0 bank_mask:0x0 140 141// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x34,0x01,0x00] 142v_dot2c_i32_i16_dpp v5, v1, v2 wave_rol:1 row_mask:0x0 bank_mask:0x0 143 144// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x38,0x01,0x00] 145v_dot2c_i32_i16_dpp v5, v1, v2 wave_shr:1 row_mask:0x0 bank_mask:0x0 146 147// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x3c,0x01,0x00] 148v_dot2c_i32_i16_dpp v5, v1, v2 wave_ror:1 row_mask:0x0 bank_mask:0x0 149 150// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x01,0x01,0x00] 151v_dot2c_i32_i16_dpp v5, v1, v2 row_shl:1 row_mask:0x0 bank_mask:0x0 152 153// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x0f,0x01,0x00] 154v_dot2c_i32_i16_dpp v5, v1, v2 row_shl:15 row_mask:0x0 bank_mask:0x0 155 156// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x11,0x01,0x00] 157v_dot2c_i32_i16_dpp v5, v1, v2 row_shr:1 row_mask:0x0 bank_mask:0x0 158 159// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x1f,0x01,0x00] 160v_dot2c_i32_i16_dpp v5, v1, v2 row_shr:15 row_mask:0x0 bank_mask:0x0 161 162// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x21,0x01,0x00] 163v_dot2c_i32_i16_dpp v5, v1, v2 row_ror:1 row_mask:0x0 bank_mask:0x0 164 165// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0x2f,0x01,0x00] 166v_dot2c_i32_i16_dpp v5, v1, v2 row_ror:15 row_mask:0x0 bank_mask:0x0 167 168// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0xe4,0x00,0x10] 169v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x1 bank_mask:0x0 170 171// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0xe4,0x00,0x30] 172v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x3 bank_mask:0x0 173 174// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0xe4,0x00,0xf0] 175v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0xf bank_mask:0x0 176 177// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0xe4,0x00,0xf0] 178v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[0,1,2,3] bank_mask:0x0 179 180// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0xe4,0x00,0x01] 181v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x1 182 183// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0xe4,0x00,0x03] 184v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x3 185 186// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0xe4,0x00,0x0f] 187v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0xf 188 189// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0xe4,0x00,0x0f] 190v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 191 192// CHECK: encoding: [0xfa,0x04,0x0a,0x70,0x01,0xe4,0x08,0x00] 193v_dot2c_i32_i16_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 bound_ctrl:0 194 195// CHECK: encoding: [0x01,0x05,0x0a,0x72] 196v_dot4c_i32_i8 v5, v1, v2 197 198// CHECK: encoding: [0x01,0x05,0xfe,0x73] 199v_dot4c_i32_i8 v255, v1, v2 200 201// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0xe4,0x00,0x00] 202v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 203 204// CHECK: encoding: [0xfa,0x04,0xfe,0x73,0x01,0xe4,0x00,0x00] 205v_dot4c_i32_i8_dpp v255, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 206 207// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0xff,0xe4,0x00,0x00] 208v_dot4c_i32_i8_dpp v5, v255, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 209 210// CHECK: encoding: [0xfa,0xfe,0x0b,0x72,0x01,0xe4,0x00,0x00] 211v_dot4c_i32_i8_dpp v5, v1, v255 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 212 213// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x1b,0x00,0x00] 214v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[3,2,1,0] row_mask:0x0 bank_mask:0x0 215 216// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x40,0x01,0x00] 217v_dot4c_i32_i8_dpp v5, v1, v2 row_mirror row_mask:0x0 bank_mask:0x0 218 219// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x41,0x01,0x00] 220v_dot4c_i32_i8_dpp v5, v1, v2 row_half_mirror row_mask:0x0 bank_mask:0x0 221 222// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x42,0x01,0x00] 223v_dot4c_i32_i8_dpp v5, v1, v2 row_bcast:15 row_mask:0x0 bank_mask:0x0 224 225// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x43,0x01,0x00] 226v_dot4c_i32_i8_dpp v5, v1, v2 row_bcast:31 row_mask:0x0 bank_mask:0x0 227 228// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x30,0x01,0x00] 229v_dot4c_i32_i8_dpp v5, v1, v2 wave_shl:1 row_mask:0x0 bank_mask:0x0 230 231// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x34,0x01,0x00] 232v_dot4c_i32_i8_dpp v5, v1, v2 wave_rol:1 row_mask:0x0 bank_mask:0x0 233 234// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x38,0x01,0x00] 235v_dot4c_i32_i8_dpp v5, v1, v2 wave_shr:1 row_mask:0x0 bank_mask:0x0 236 237// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x3c,0x01,0x00] 238v_dot4c_i32_i8_dpp v5, v1, v2 wave_ror:1 row_mask:0x0 bank_mask:0x0 239 240// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x01,0x01,0x00] 241v_dot4c_i32_i8_dpp v5, v1, v2 row_shl:1 row_mask:0x0 bank_mask:0x0 242 243// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x0f,0x01,0x00] 244v_dot4c_i32_i8_dpp v5, v1, v2 row_shl:15 row_mask:0x0 bank_mask:0x0 245 246// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x11,0x01,0x00] 247v_dot4c_i32_i8_dpp v5, v1, v2 row_shr:1 row_mask:0x0 bank_mask:0x0 248 249// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x1f,0x01,0x00] 250v_dot4c_i32_i8_dpp v5, v1, v2 row_shr:15 row_mask:0x0 bank_mask:0x0 251 252// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x21,0x01,0x00] 253v_dot4c_i32_i8_dpp v5, v1, v2 row_ror:1 row_mask:0x0 bank_mask:0x0 254 255// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0x2f,0x01,0x00] 256v_dot4c_i32_i8_dpp v5, v1, v2 row_ror:15 row_mask:0x0 bank_mask:0x0 257 258// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0xe4,0x00,0x10] 259v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x1 bank_mask:0x0 260 261// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0xe4,0x00,0x30] 262v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x3 bank_mask:0x0 263 264// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0xe4,0x00,0xf0] 265v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0xf bank_mask:0x0 266 267// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0xe4,0x00,0xf0] 268v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[0,1,2,3] bank_mask:0x0 269 270// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0xe4,0x00,0x01] 271v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x1 272 273// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0xe4,0x00,0x03] 274v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x3 275 276// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0xe4,0x00,0x0f] 277v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0xf 278 279// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0xe4,0x00,0x0f] 280v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 281 282// CHECK: encoding: [0xfa,0x04,0x0a,0x72,0x01,0xe4,0x08,0x00] 283v_dot4c_i32_i8_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 bound_ctrl:0 284 285// CHECK: encoding: [0x01,0x05,0x0a,0x74] 286v_dot8c_i32_i4 v5, v1, v2 287 288// CHECK: encoding: [0x01,0x05,0xfe,0x75] 289v_dot8c_i32_i4 v255, v1, v2 290 291// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0xe4,0x00,0x00] 292v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 293 294// CHECK: encoding: [0xfa,0x04,0xfe,0x75,0x01,0xe4,0x00,0x00] 295v_dot8c_i32_i4_dpp v255, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 296 297// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0xff,0xe4,0x00,0x00] 298v_dot8c_i32_i4_dpp v5, v255, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 299 300// CHECK: encoding: [0xfa,0xfe,0x0b,0x74,0x01,0xe4,0x00,0x00] 301v_dot8c_i32_i4_dpp v5, v1, v255 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 302 303// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x1b,0x00,0x00] 304v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[3,2,1,0] row_mask:0x0 bank_mask:0x0 305 306// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x40,0x01,0x00] 307v_dot8c_i32_i4_dpp v5, v1, v2 row_mirror row_mask:0x0 bank_mask:0x0 308 309// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x41,0x01,0x00] 310v_dot8c_i32_i4_dpp v5, v1, v2 row_half_mirror row_mask:0x0 bank_mask:0x0 311 312// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x42,0x01,0x00] 313v_dot8c_i32_i4_dpp v5, v1, v2 row_bcast:15 row_mask:0x0 bank_mask:0x0 314 315// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x43,0x01,0x00] 316v_dot8c_i32_i4_dpp v5, v1, v2 row_bcast:31 row_mask:0x0 bank_mask:0x0 317 318// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x30,0x01,0x00] 319v_dot8c_i32_i4_dpp v5, v1, v2 wave_shl:1 row_mask:0x0 bank_mask:0x0 320 321// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x34,0x01,0x00] 322v_dot8c_i32_i4_dpp v5, v1, v2 wave_rol:1 row_mask:0x0 bank_mask:0x0 323 324// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x38,0x01,0x00] 325v_dot8c_i32_i4_dpp v5, v1, v2 wave_shr:1 row_mask:0x0 bank_mask:0x0 326 327// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x3c,0x01,0x00] 328v_dot8c_i32_i4_dpp v5, v1, v2 wave_ror:1 row_mask:0x0 bank_mask:0x0 329 330// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x01,0x01,0x00] 331v_dot8c_i32_i4_dpp v5, v1, v2 row_shl:1 row_mask:0x0 bank_mask:0x0 332 333// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x0f,0x01,0x00] 334v_dot8c_i32_i4_dpp v5, v1, v2 row_shl:15 row_mask:0x0 bank_mask:0x0 335 336// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x11,0x01,0x00] 337v_dot8c_i32_i4_dpp v5, v1, v2 row_shr:1 row_mask:0x0 bank_mask:0x0 338 339// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x1f,0x01,0x00] 340v_dot8c_i32_i4_dpp v5, v1, v2 row_shr:15 row_mask:0x0 bank_mask:0x0 341 342// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x21,0x01,0x00] 343v_dot8c_i32_i4_dpp v5, v1, v2 row_ror:1 row_mask:0x0 bank_mask:0x0 344 345// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0x2f,0x01,0x00] 346v_dot8c_i32_i4_dpp v5, v1, v2 row_ror:15 row_mask:0x0 bank_mask:0x0 347 348// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0xe4,0x00,0x10] 349v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x1 bank_mask:0x0 350 351// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0xe4,0x00,0x30] 352v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x3 bank_mask:0x0 353 354// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0xe4,0x00,0xf0] 355v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0xf bank_mask:0x0 356 357// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0xe4,0x00,0xf0] 358v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[0,1,2,3] bank_mask:0x0 359 360// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0xe4,0x00,0x01] 361v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x1 362 363// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0xe4,0x00,0x03] 364v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x3 365 366// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0xe4,0x00,0x0f] 367v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0xf 368 369// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0xe4,0x00,0x0f] 370v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 371 372// CHECK: encoding: [0xfa,0x04,0x0a,0x74,0x01,0xe4,0x08,0x00] 373v_dot8c_i32_i4_dpp v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 bound_ctrl:0 374 375// CHECK: encoding: [0x01,0x05,0x0a,0x78] 376v_pk_fmac_f16 v5, v1, v2 377 378// CHECK: encoding: [0x01,0x05,0xfe,0x79] 379v_pk_fmac_f16 v255, v1, v2 380 381// CHECK: encoding: [0xff,0x05,0x0a,0x78] 382v_pk_fmac_f16 v5, v255, v2 383 384// CHECK: encoding: [0x01,0x04,0x0a,0x78] 385v_pk_fmac_f16 v5, s1, v2 386 387// CHECK: encoding: [0x6a,0x04,0x0a,0x78] 388v_pk_fmac_f16 v5, vcc_lo, v2 389 390// CHECK: encoding: [0x6b,0x04,0x0a,0x78] 391v_pk_fmac_f16 v5, vcc_hi, v2 392 393// CHECK: encoding: [0x77,0x04,0x0a,0x78] 394v_pk_fmac_f16 v5, ttmp11, v2 395 396// CHECK: encoding: [0x7c,0x04,0x0a,0x78] 397v_pk_fmac_f16 v5, m0, v2 398 399// CHECK: encoding: [0x7e,0x04,0x0a,0x78] 400v_pk_fmac_f16 v5, exec_lo, v2 401 402// CHECK: encoding: [0x7f,0x04,0x0a,0x78] 403v_pk_fmac_f16 v5, exec_hi, v2 404 405// CHECK: encoding: [0x80,0x04,0x0a,0x78] 406v_pk_fmac_f16 v5, 0, v2 407 408// CHECK: encoding: [0xc1,0x04,0x0a,0x78] 409v_pk_fmac_f16 v5, -1, v2 410 411// CHECK: encoding: [0xf0,0x04,0x0a,0x78] 412v_pk_fmac_f16 v5, 0.5, v2 413 414// CHECK: encoding: [0xf7,0x04,0x0a,0x78] 415v_pk_fmac_f16 v5, -4.0, v2 416 417// CHECK: encoding: [0x01,0xff,0x0b,0x78] 418v_pk_fmac_f16 v5, v1, v255 419