1// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1200 -show-encoding %s | FileCheck --check-prefix=GFX12 %s 2// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1200 %s 2>&1 | FileCheck --check-prefix=GFX12-ERR --implicit-check-not=error: %s 3 4v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] 5// GFX12: v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] ; encoding: [0x08,0x40,0x40,0xcc,0x00,0x09,0x22,0x1c] 6 7v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] clamp 8// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 9 10v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel:[1,0,0] 11// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 12 13v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel:[0,1,0] 14// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 15 16v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel:[0,0,1] 17// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 18 19v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel_hi:[0,1,1] 20// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 21 22v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel_hi:[1,0,1] 23// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 24 25v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel_hi:[1,1,0] 26// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 27 28v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[1,0,0] 29// GFX12: v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[1,0,0] ; encoding: [0x08,0x40,0x40,0xcc,0x00,0x09,0x22,0x3c] 30 31v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[0,1,0] 32// GFX12: v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[0,1,0] ; encoding: [0x08,0x40,0x40,0xcc,0x00,0x09,0x22,0x5c] 33 34v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[0,0,1] 35// GFX12: v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[0,0,1] ; encoding: [0x08,0x40,0x40,0xcc,0x00,0x09,0x22,0x9c] 36 37v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[1,0,0] 38// GFX12: v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[1,0,0] ; encoding: [0x08,0x41,0x40,0xcc,0x00,0x09,0x22,0x1c] 39 40v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[0,1,0] 41// GFX12: v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[0,1,0] ; encoding: [0x08,0x42,0x40,0xcc,0x00,0x09,0x22,0x1c] 42 43v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[0,0,1] 44// GFX12: v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[0,0,1] ; encoding: [0x08,0x44,0x40,0xcc,0x00,0x09,0x22,0x1c] 45 46v_wmma_f32_16x16x16_f16 v[8:15], s[0:3], v[4:7], v[8:15] 47// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 48 49v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], s[4:7], v[8:15] 50// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 51 52v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], s[8:15] 53// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 54 55v_wmma_f32_16x16x16_f16 v[8:15], 1.0, v[4:7], v[8:15] 56// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 57 58v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], 1.0, v[8:15] 59// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 60 61v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], 1.0 62// GFX12: v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], 1.0 ; encoding: [0x08,0x40,0x40,0xcc,0x00,0x09,0xca,0x1b] 63 64v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], 1 65// GFX12: v_wmma_f32_16x16x16_f16 v[8:15], v[0:3], v[4:7], 1 ; encoding: [0x08,0x40,0x40,0xcc,0x00,0x09,0x06,0x1a] 66 67 68 69v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] 70// GFX12: v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] ; encoding: [0x08,0x40,0x41,0xcc,0x00,0x09,0x22,0x1c] 71 72v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] clamp 73// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 74 75v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel:[1,0,0] 76// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 77 78v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel:[0,1,0] 79// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 80 81v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel:[0,0,1] 82// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 83 84v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel_hi:[0,1,1] 85// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 86 87v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel_hi:[1,0,1] 88// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 89 90v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] op_sel_hi:[1,1,0] 91// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 92 93v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[1,0,0] 94// GFX12: v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[1,0,0] ; encoding: [0x08,0x40,0x41,0xcc,0x00,0x09,0x22,0x3c] 95 96v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[0,1,0] 97// GFX12: v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[0,1,0] ; encoding: [0x08,0x40,0x41,0xcc,0x00,0x09,0x22,0x5c] 98 99v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[0,0,1] 100// GFX12: v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_lo:[0,0,1] ; encoding: [0x08,0x40,0x41,0xcc,0x00,0x09,0x22,0x9c] 101 102v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[1,0,0] 103// GFX12: v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[1,0,0] ; encoding: [0x08,0x41,0x41,0xcc,0x00,0x09,0x22,0x1c] 104 105v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[0,1,0] 106// GFX12: v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[0,1,0] ; encoding: [0x08,0x42,0x41,0xcc,0x00,0x09,0x22,0x1c] 107 108v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[0,0,1] 109// GFX12: v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], v[8:15] neg_hi:[0,0,1] ; encoding: [0x08,0x44,0x41,0xcc,0x00,0x09,0x22,0x1c] 110 111v_wmma_f32_16x16x16_bf16 v[8:15], s[0:3], v[4:7], v[8:15] 112// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 113 114v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], s[4:7], v[8:15] 115// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 116 117v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], s[8:15] 118// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 119 120v_wmma_f32_16x16x16_bf16 v[8:15], 1.0, v[4:7], v[8:15] 121// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 122 123v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], 1.0, v[8:15] 124// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 125 126v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], 1.0 127// GFX12: v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], 1.0 ; encoding: [0x08,0x40,0x41,0xcc,0x00,0x09,0xca,0x1b] 128 129v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], 1 130// GFX12: v_wmma_f32_16x16x16_bf16 v[8:15], v[0:3], v[4:7], 1 ; encoding: [0x08,0x40,0x41,0xcc,0x00,0x09,0x06,0x1a] 131 132 133 134v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] 135// GFX12: v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] ; encoding: [0x08,0x40,0x42,0xcc,0x00,0x09,0x22,0x1c] 136 137v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] clamp 138// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 139 140v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel:[1,0,0] 141// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 142 143v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel:[0,1,0] 144// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 145 146v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel:[0,0,1] 147// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 148 149v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel_hi:[0,1,1] 150// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 151 152v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel_hi:[1,0,1] 153// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 154 155v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel_hi:[1,1,0] 156// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 157 158v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[1,0,0] 159// GFX12: v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[1,0,0] ; encoding: [0x08,0x40,0x42,0xcc,0x00,0x09,0x22,0x3c] 160 161v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[0,1,0] 162// GFX12: v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[0,1,0] ; encoding: [0x08,0x40,0x42,0xcc,0x00,0x09,0x22,0x5c] 163 164v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[0,0,1] 165// GFX12: v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[0,0,1] ; encoding: [0x08,0x40,0x42,0xcc,0x00,0x09,0x22,0x9c] 166 167v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[1,0,0] 168// GFX12: v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[1,0,0] ; encoding: [0x08,0x41,0x42,0xcc,0x00,0x09,0x22,0x1c] 169 170v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[0,1,0] 171// GFX12: v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[0,1,0] ; encoding: [0x08,0x42,0x42,0xcc,0x00,0x09,0x22,0x1c] 172 173v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[0,0,1] 174// GFX12: v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[0,0,1] ; encoding: [0x08,0x44,0x42,0xcc,0x00,0x09,0x22,0x1c] 175 176v_wmma_f16_16x16x16_f16 v[8:11], s[0:3], v[4:7], v[8:11] 177// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 178 179v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], s[4:7], v[8:11] 180// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 181 182v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], s[8:11] 183// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 184 185v_wmma_f16_16x16x16_f16 v[8:11], 1.0, v[4:7], v[8:11] 186// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 187 188v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], 1.0, v[8:11] 189// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 190 191v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], 1.0 192// GFX12: v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], 1.0 ; encoding: [0x08,0x40,0x42,0xcc,0x00,0x09,0xca,0x1b] 193 194v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], 1 195// GFX12: v_wmma_f16_16x16x16_f16 v[8:11], v[0:3], v[4:7], 1 ; encoding: [0x08,0x40,0x42,0xcc,0x00,0x09,0x06,0x1a] 196 197 198 199v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] 200// GFX12: v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] ; encoding: [0x08,0x40,0x43,0xcc,0x00,0x09,0x22,0x1c] 201 202v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] clamp 203// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 204 205v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel:[1,0,0] 206// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 207 208v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel:[0,1,0] 209// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 210 211v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel:[0,0,1] 212// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 213 214v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel_hi:[0,1,1] 215// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 216 217v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel_hi:[1,0,1] 218// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 219 220v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] op_sel_hi:[1,1,0] 221// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 222 223v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[1,0,0] 224// GFX12: v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[1,0,0] ; encoding: [0x08,0x40,0x43,0xcc,0x00,0x09,0x22,0x3c] 225 226v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[0,1,0] 227// GFX12: v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[0,1,0] ; encoding: [0x08,0x40,0x43,0xcc,0x00,0x09,0x22,0x5c] 228 229v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[0,0,1] 230// GFX12: v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_lo:[0,0,1] ; encoding: [0x08,0x40,0x43,0xcc,0x00,0x09,0x22,0x9c] 231 232v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[1,0,0] 233// GFX12: v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[1,0,0] ; encoding: [0x08,0x41,0x43,0xcc,0x00,0x09,0x22,0x1c] 234 235v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[0,1,0] 236// GFX12: v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[0,1,0] ; encoding: [0x08,0x42,0x43,0xcc,0x00,0x09,0x22,0x1c] 237 238v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[0,0,1] 239// GFX12: v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], v[8:11] neg_hi:[0,0,1] ; encoding: [0x08,0x44,0x43,0xcc,0x00,0x09,0x22,0x1c] 240 241v_wmma_bf16_16x16x16_bf16 v[8:11], s[0:3], v[4:7], v[8:11] 242// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 243 244v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], s[4:7], v[8:11] 245// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 246 247v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], s[8:11] 248// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 249 250v_wmma_bf16_16x16x16_bf16 v[8:11], 1.0, v[4:7], v[8:11] 251// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 252 253v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], 1.0, v[8:11] 254// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 255 256v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], 1.0 257// GFX12: v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], 1.0 ; encoding: [0x08,0x40,0x43,0xcc,0x00,0x09,0xca,0x1b] 258 259v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], 1 260// GFX12: v_wmma_bf16_16x16x16_bf16 v[8:11], v[0:3], v[4:7], 1 ; encoding: [0x08,0x40,0x43,0xcc,0x00,0x09,0x06,0x1a] 261 262 263 264v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] 265// GFX12: v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] ; encoding: [0x04,0x40,0x44,0xcc,0x00,0x05,0x12,0x1c] 266 267v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] clamp 268// GFX12: v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] clamp ; encoding: [0x04,0xc0,0x44,0xcc,0x00,0x05,0x12,0x1c] 269 270v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[1,0,0] 271// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 272 273v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,1,0] 274// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 275 276v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,0,1] 277// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 278 279v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[0,1,1] 280// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 281 282v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,0,1] 283// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 284 285v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,1,0] 286// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 287 288v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[1,0,0] 289// GFX12: v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[1,0,0] ; encoding: [0x04,0x40,0x44,0xcc,0x00,0x05,0x12,0x3c] 290 291v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,1,0] 292// GFX12: v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,1,0] ; encoding: [0x04,0x40,0x44,0xcc,0x00,0x05,0x12,0x5c] 293 294v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,0,1] 295// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 296 297v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[1,0,0] 298// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 299 300v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,1,0] 301// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 302 303v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,0,1] 304// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 305 306v_wmma_i32_16x16x16_iu8 v[4:11], s[0:1], v[2:3], v[4:11] 307// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 308 309v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], s[2:3], v[4:11] 310// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 311 312v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], s[4:11] 313// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 314 315v_wmma_i32_16x16x16_iu8 v[4:11], 1, v[2:3], v[4:11] 316// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 317 318v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], 1, v[4:11] 319// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 320 321v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], 1 322// GFX12: v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], 1 ; encoding: [0x04,0x40,0x44,0xcc,0x00,0x05,0x06,0x1a] 323 324v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], 1.0 325// GFX12: v_wmma_i32_16x16x16_iu8 v[4:11], v[0:1], v[2:3], 1.0 ; encoding: [0x04,0x40,0x44,0xcc,0x00,0x05,0xca,0x1b] 326 327 328 329v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] 330// GFX12: v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] ; encoding: [0x02,0x40,0x45,0xcc,0x00,0x03,0x0a,0x1c] 331 332v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] clamp 333// GFX12: v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] clamp ; encoding: [0x02,0xc0,0x45,0xcc,0x00,0x03,0x0a,0x1c] 334 335v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] op_sel:[1,0,0] 336// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 337 338v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] op_sel:[0,1,0] 339// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 340 341v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] op_sel:[0,0,1] 342// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 343 344v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] op_sel_hi:[0,1,1] 345// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 346 347v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] op_sel_hi:[1,0,1] 348// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 349 350v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] op_sel_hi:[1,1,0] 351// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 352 353v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] neg_lo:[1,0,0] 354// GFX12: v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] neg_lo:[1,0,0] ; encoding: [0x02,0x40,0x45,0xcc,0x00,0x03,0x0a,0x3c] 355 356v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] neg_lo:[0,1,0] 357// GFX12: v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] neg_lo:[0,1,0] ; encoding: [0x02,0x40,0x45,0xcc,0x00,0x03,0x0a,0x5c] 358 359v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] neg_lo:[0,0,1] 360// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 361 362v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] neg_hi:[1,0,0] 363// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 364 365v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] neg_hi:[0,1,0] 366// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 367 368v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, v[2:9] neg_hi:[0,0,1] 369// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 370 371v_wmma_i32_16x16x16_iu4 v[2:9], s0, v1, v[2:9] 372// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 373 374v_wmma_i32_16x16x16_iu4 v[2:9], v0, s1, v[2:9] 375// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 376 377v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, s[0:7] 378// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 379 380v_wmma_i32_16x16x16_iu4 v[2:9], 1, v1, v[2:9] 381// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 382 383v_wmma_i32_16x16x16_iu4 v[2:9], v0, 1, v[2:9] 384// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 385 386v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, 1 387// GFX12: v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, 1 ; encoding: [0x02,0x40,0x45,0xcc,0x00,0x03,0x06,0x1a] 388 389v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, 1.0 390// GFX12: v_wmma_i32_16x16x16_iu4 v[2:9], v0, v1, 1.0 ; encoding: [0x02,0x40,0x45,0xcc,0x00,0x03,0xca,0x1b] 391 392 393 394v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] 395// GFX12: v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] ; encoding: [0x04,0x40,0x46,0xcc,0x00,0x05,0x12,0x1c] 396 397v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] clamp 398// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 399 400v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[1,0,0] 401// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 402 403v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,1,0] 404// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 405 406v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,0,1] 407// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 408 409v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[0,1,1] 410// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 411 412v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,0,1] 413// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 414 415v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,1,0] 416// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 417 418v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[1,0,0] 419// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 420 421v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,1,0] 422// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 423 424v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,0,1] 425// GFX12: v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,0,1] ; encoding: [0x04,0x40,0x46,0xcc,0x00,0x05,0x12,0x9c] 426 427v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[1,0,0] 428// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 429 430v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,1,0] 431// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 432 433v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,0,1] 434// GFX12: v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,0,1] ; encoding: [0x04,0x44,0x46,0xcc,0x00,0x05,0x12,0x1c] 435 436v_wmma_f32_16x16x16_fp8_fp8 v[4:11], s[0:1], v[2:3], v[4:11] 437// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 438 439v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], s[2:3], v[4:11] 440// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 441 442v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], s[4:11] 443// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 444 445v_wmma_f32_16x16x16_fp8_fp8 v[4:11], 1.0, v[2:3], v[4:11] 446// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 447 448v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], 1.0, v[4:11] 449// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 450 451v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], 1.0 452// GFX12: v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], 1.0 ; encoding: [0x04,0x40,0x46,0xcc,0x00,0x05,0xca,0x1b] 453 454v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], 1 455// GFX12: v_wmma_f32_16x16x16_fp8_fp8 v[4:11], v[0:1], v[2:3], 1 ; encoding: [0x04,0x40,0x46,0xcc,0x00,0x05,0x06,0x1a] 456 457 458 459v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] 460// GFX12: v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] ; encoding: [0x04,0x40,0x48,0xcc,0x00,0x05,0x12,0x1c] 461 462v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] clamp 463// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 464 465v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[1,0,0] 466// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 467 468v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,1,0] 469// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 470 471v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,0,1] 472// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 473 474v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[0,1,1] 475// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 476 477v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,0,1] 478// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 479 480v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,1,0] 481// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 482 483v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[1,0,0] 484// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 485 486v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,1,0] 487// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 488 489v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,0,1] 490// GFX12: v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,0,1] ; encoding: [0x04,0x40,0x48,0xcc,0x00,0x05,0x12,0x9c] 491 492v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[1,0,0] 493// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 494 495v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,1,0] 496// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 497 498v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,0,1] 499// GFX12: v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,0,1] ; encoding: [0x04,0x44,0x48,0xcc,0x00,0x05,0x12,0x1c] 500 501v_wmma_f32_16x16x16_bf8_fp8 v[4:11], s[0:1], v[2:3], v[4:11] 502// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 503 504v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], s[2:3], v[4:11] 505// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 506 507v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], s[4:11] 508// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 509 510v_wmma_f32_16x16x16_bf8_fp8 v[4:11], 1.0, v[2:3], v[4:11] 511// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 512 513v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], 1.0, v[4:11] 514// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 515 516v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], 1.0 517// GFX12: v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], 1.0 ; encoding: [0x04,0x40,0x48,0xcc,0x00,0x05,0xca,0x1b] 518 519v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], 1 520// GFX12: v_wmma_f32_16x16x16_bf8_fp8 v[4:11], v[0:1], v[2:3], 1 ; encoding: [0x04,0x40,0x48,0xcc,0x00,0x05,0x06,0x1a] 521 522 523 524v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] 525// GFX12: v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] ; encoding: [0x04,0x40,0x47,0xcc,0x00,0x05,0x12,0x1c] 526 527v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] clamp 528// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 529 530v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[1,0,0] 531// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 532 533v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,1,0] 534// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 535 536v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,0,1] 537// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 538 539v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[0,1,1] 540// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 541 542v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,0,1] 543// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 544 545v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,1,0] 546// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 547 548v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[1,0,0] 549// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 550 551v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,1,0] 552// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 553 554v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,0,1] 555// GFX12: v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,0,1] ; encoding: [0x04,0x40,0x47,0xcc,0x00,0x05,0x12,0x9c] 556 557v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[1,0,0] 558// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 559 560v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,1,0] 561// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 562 563v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,0,1] 564// GFX12: v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,0,1] ; encoding: [0x04,0x44,0x47,0xcc,0x00,0x05,0x12,0x1c] 565 566v_wmma_f32_16x16x16_fp8_bf8 v[4:11], s[0:1], v[2:3], v[4:11] 567// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 568 569v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], s[2:3], v[4:11] 570// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 571 572v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], s[4:11] 573// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 574 575v_wmma_f32_16x16x16_fp8_bf8 v[4:11], 1.0, v[2:3], v[4:11] 576// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 577 578v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], 1.0, v[4:11] 579// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 580 581v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], 1.0 582// GFX12: v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], 1.0 ; encoding: [0x04,0x40,0x47,0xcc,0x00,0x05,0xca,0x1b] 583 584v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], 1 585// GFX12: v_wmma_f32_16x16x16_fp8_bf8 v[4:11], v[0:1], v[2:3], 1 ; encoding: [0x04,0x40,0x47,0xcc,0x00,0x05,0x06,0x1a] 586 587 588 589v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] 590// GFX12: v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] ; encoding: [0x04,0x40,0x49,0xcc,0x00,0x05,0x12,0x1c] 591 592v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] clamp 593// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 594 595v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[1,0,0] 596// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 597 598v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,1,0] 599// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 600 601v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,0,1] 602// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 603 604v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[0,1,1] 605// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 606 607v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,0,1] 608// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 609 610v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,1,0] 611// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 612 613v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[1,0,0] 614// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 615 616v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,1,0] 617// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 618 619v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,0,1] 620// GFX12: v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,0,1] ; encoding: [0x04,0x40,0x49,0xcc,0x00,0x05,0x12,0x9c] 621 622v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[1,0,0] 623// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 624 625v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,1,0] 626// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 627 628v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,0,1] 629// GFX12: v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,0,1] ; encoding: [0x04,0x44,0x49,0xcc,0x00,0x05,0x12,0x1c] 630 631v_wmma_f32_16x16x16_bf8_bf8 v[4:11], s[0:1], v[2:3], v[4:11] 632// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 633 634v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], s[2:3], v[4:11] 635// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 636 637v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], s[4:11] 638// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 639 640v_wmma_f32_16x16x16_bf8_bf8 v[4:11], 1.0, v[2:3], v[4:11] 641// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 642 643v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], 1.0, v[4:11] 644// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 645 646v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], 1.0 647// GFX12: v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], 1.0 ; encoding: [0x04,0x40,0x49,0xcc,0x00,0x05,0xca,0x1b] 648 649v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], 1 650// GFX12: v_wmma_f32_16x16x16_bf8_bf8 v[4:11], v[0:1], v[2:3], 1 ; encoding: [0x04,0x40,0x49,0xcc,0x00,0x05,0x06,0x1a] 651 652 653 654v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] 655// GFX12: v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] ; encoding: [0x04,0x40,0x4a,0xcc,0x00,0x05,0x12,0x1c] 656 657v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] clamp 658// GFX12: v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] clamp ; encoding: [0x04,0xc0,0x4a,0xcc,0x00,0x05,0x12,0x1c] 659 660v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[1,0,0] 661// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 662 663v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,1,0] 664// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 665 666v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] op_sel:[0,0,1] 667// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 668 669v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[0,1,1] 670// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 671 672v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,0,1] 673// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 674 675v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] op_sel_hi:[1,1,0] 676// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 677 678v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[1,0,0] 679// GFX12: v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[1,0,0] ; encoding: [0x04,0x40,0x4a,0xcc,0x00,0x05,0x12,0x3c] 680 681v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,1,0] 682// GFX12: v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,1,0] ; encoding: [0x04,0x40,0x4a,0xcc,0x00,0x05,0x12,0x5c] 683 684v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] neg_lo:[0,0,1] 685// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 686 687v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[1,0,0] 688// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 689 690v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,1,0] 691// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 692 693v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], v[4:11] neg_hi:[0,0,1] 694// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 695 696v_wmma_i32_16x16x32_iu4 v[4:11], s[0:1], v[2:3], v[4:11] 697// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 698 699v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], s[2:3], v[4:11] 700// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 701 702v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], s[4:11] 703// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 704 705v_wmma_i32_16x16x32_iu4 v[4:11], 1, v[2:3], v[4:11] 706// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 707 708v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], 1, v[4:11] 709// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 710 711v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], 1 712// GFX12: v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], 1 ; encoding: [0x04,0x40,0x4a,0xcc,0x00,0x05,0x06,0x1a] 713 714v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], 1.0 715// GFX12: v_wmma_i32_16x16x32_iu4 v[4:11], v[0:1], v[2:3], 1.0 ; encoding: [0x04,0x40,0x4a,0xcc,0x00,0x05,0xca,0x1b] 716 717 718 719v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 720// GFX12: v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 ; encoding: [0x0c,0x40,0x50,0xcc,0x00,0x09,0x52,0x1c] 721 722v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 clamp 723// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 724 725v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 op_sel:[1,0,0] 726// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 727 728v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 op_sel:[0,1,0] 729// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 730 731v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 op_sel:[0,0,1] 732// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 733 734v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 op_sel_hi:[0,1,1] 735// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 736 737v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 op_sel_hi:[1,0,1] 738// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 739 740v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 op_sel_hi:[1,1,0] 741// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 742 743v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 index_key:1 744// GFX12: v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 index_key:1 ; encoding: [0x0c,0x48,0x50,0xcc,0x00,0x09,0x52,0x1c] 745 746v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 index_key:2 747// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 748 749v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 index_key:3 750// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 751 752v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 neg_lo:[1,0,0] 753// GFX12: v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 neg_lo:[1,0,0] ; encoding: [0x0c,0x40,0x50,0xcc,0x00,0x09,0x52,0x3c] 754 755v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 neg_lo:[0,1,0] 756// GFX12: v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 neg_lo:[0,1,0] ; encoding: [0x0c,0x40,0x50,0xcc,0x00,0x09,0x52,0x5c] 757 758v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 neg_lo:[0,0,1] 759// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 760 761v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 neg_hi:[1,0,0] 762// GFX12: v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 neg_hi:[1,0,0] ; encoding: [0x0c,0x41,0x50,0xcc,0x00,0x09,0x52,0x1c] 763 764v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 neg_hi:[0,1,0] 765// GFX12: v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 neg_hi:[0,1,0] ; encoding: [0x0c,0x42,0x50,0xcc,0x00,0x09,0x52,0x1c] 766 767v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], v20 neg_hi:[0,0,1] 768// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 769 770v_swmmac_f32_16x16x32_f16 v[12:19], s[0:3], v[4:11], v20 771// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 772 773v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], s[4:11], v20 774// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 775 776v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], s20 777// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 778 779v_swmmac_f32_16x16x32_f16 v[12:19], 1.0, v[4:11], v20 780// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 781 782v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], 1.0, v20 783// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 784 785v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], 1.0 786// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 787 788v_swmmac_f32_16x16x32_f16 v[12:19], v[0:3], v[4:11], 1 789// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 790 791 792 793v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 794// GFX12: v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 ; encoding: [0x0c,0x40,0x51,0xcc,0x00,0x09,0x52,0x1c] 795 796v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 clamp 797// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 798 799v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 op_sel:[1,0,0] 800// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 801 802v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 op_sel:[0,1,0] 803// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 804 805v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 op_sel:[0,0,1] 806// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 807 808v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 op_sel_hi:[0,1,1] 809// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 810 811v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 op_sel_hi:[1,0,1] 812// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 813 814v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 op_sel_hi:[1,1,0] 815// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 816 817v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 index_key:1 818// GFX12: v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 index_key:1 ; encoding: [0x0c,0x48,0x51,0xcc,0x00,0x09,0x52,0x1c] 819 820v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 index_key:2 821// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 822 823v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 index_key:3 824// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 825 826v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 neg_lo:[1,0,0] 827// GFX12: v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 neg_lo:[1,0,0] ; encoding: [0x0c,0x40,0x51,0xcc,0x00,0x09,0x52,0x3c] 828 829v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 neg_lo:[0,1,0] 830// GFX12: v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 neg_lo:[0,1,0] ; encoding: [0x0c,0x40,0x51,0xcc,0x00,0x09,0x52,0x5c] 831 832v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 neg_lo:[0,0,1] 833// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 834 835v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 neg_hi:[1,0,0] 836// GFX12: v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 neg_hi:[1,0,0] ; encoding: [0x0c,0x41,0x51,0xcc,0x00,0x09,0x52,0x1c] 837 838v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 neg_hi:[0,1,0] 839// GFX12: v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 neg_hi:[0,1,0] ; encoding: [0x0c,0x42,0x51,0xcc,0x00,0x09,0x52,0x1c] 840 841v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], v20 neg_hi:[0,0,1] 842// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 843 844v_swmmac_f32_16x16x32_bf16 v[12:19], s[0:3], v[4:11], v20 845// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 846 847v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], s[4:11], v20 848// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 849 850v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], s20 851// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 852 853v_swmmac_f32_16x16x32_bf16 v[12:19], 1.0, v[4:11], v20 854// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 855 856v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], 1.0, v20 857// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 858 859v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], 1.0 860// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 861 862v_swmmac_f32_16x16x32_bf16 v[12:19], v[0:3], v[4:11], 1 863// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 864 865 866 867v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 868// GFX12: v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 ; encoding: [0x0c,0x40,0x52,0xcc,0x00,0x09,0x42,0x1c] 869 870v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 clamp 871// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 872 873v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 op_sel:[1,0,0] 874// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 875 876v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 op_sel:[0,1,0] 877// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 878 879v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 op_sel:[0,0,1] 880// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 881 882v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 op_sel_hi:[0,1,1] 883// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 884 885v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 op_sel_hi:[1,0,1] 886// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 887 888v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 op_sel_hi:[1,1,0] 889// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 890 891v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 index_key:1 892// GFX12: v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 index_key:1 ; encoding: [0x0c,0x48,0x52,0xcc,0x00,0x09,0x42,0x1c] 893 894v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 index_key:2 895// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 896 897v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 index_key:3 898// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 899 900v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 neg_lo:[1,0,0] 901// GFX12: v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 neg_lo:[1,0,0] ; encoding: [0x0c,0x40,0x52,0xcc,0x00,0x09,0x42,0x3c] 902 903v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 neg_lo:[0,1,0] 904// GFX12: v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 neg_lo:[0,1,0] ; encoding: [0x0c,0x40,0x52,0xcc,0x00,0x09,0x42,0x5c] 905 906v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 neg_lo:[0,0,1] 907// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 908 909v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 neg_hi:[1,0,0] 910// GFX12: v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 neg_hi:[1,0,0] ; encoding: [0x0c,0x41,0x52,0xcc,0x00,0x09,0x42,0x1c] 911 912v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 neg_hi:[0,1,0] 913// GFX12: v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 neg_hi:[0,1,0] ; encoding: [0x0c,0x42,0x52,0xcc,0x00,0x09,0x42,0x1c] 914 915v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], v16 neg_hi:[0,0,1] 916// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 917 918v_swmmac_f16_16x16x32_f16 v[12:15], s[0:3], v[4:11], v16 919// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 920 921v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], s[4:11], v16 922// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 923 924v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], s16 925// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 926 927v_swmmac_f16_16x16x32_f16 v[12:15], 1.0, v[4:11], v16 928// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 929 930v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], 1.0, v16 931// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 932 933v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], 1.0 934// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 935 936v_swmmac_f16_16x16x32_f16 v[12:15], v[0:3], v[4:11], 1 937// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 938 939 940 941v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 942// GFX12: v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 ; encoding: [0x0c,0x40,0x53,0xcc,0x00,0x09,0x42,0x1c] 943 944v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 clamp 945// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 946 947v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 op_sel:[1,0,0] 948// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 949 950v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 op_sel:[0,1,0] 951// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 952 953v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 op_sel:[0,0,1] 954// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 955 956v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 op_sel_hi:[0,1,1] 957// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 958 959v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 op_sel_hi:[1,0,1] 960// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 961 962v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 op_sel_hi:[1,1,0] 963// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 964 965v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 index_key:1 966// GFX12: v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 index_key:1 ; encoding: [0x0c,0x48,0x53,0xcc,0x00,0x09,0x42,0x1c] 967 968v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 index_key:2 969// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 970 971v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 index_key:3 972// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 973 974v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 neg_lo:[1,0,0] 975// GFX12: v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 neg_lo:[1,0,0] ; encoding: [0x0c,0x40,0x53,0xcc,0x00,0x09,0x42,0x3c] 976 977v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 neg_lo:[0,1,0] 978// GFX12: v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 neg_lo:[0,1,0] ; encoding: [0x0c,0x40,0x53,0xcc,0x00,0x09,0x42,0x5c] 979 980v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 neg_lo:[0,0,1] 981// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 982 983v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 neg_hi:[1,0,0] 984// GFX12: v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 neg_hi:[1,0,0] ; encoding: [0x0c,0x41,0x53,0xcc,0x00,0x09,0x42,0x1c] 985 986v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 neg_hi:[0,1,0] 987// GFX12: v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 neg_hi:[0,1,0] ; encoding: [0x0c,0x42,0x53,0xcc,0x00,0x09,0x42,0x1c] 988 989v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], v16 neg_hi:[0,0,1] 990// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_hi operand 991 992v_swmmac_bf16_16x16x32_bf16 v[12:15], s[0:3], v[4:11], v16 993// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 994 995v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], s[4:11], v16 996// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 997 998v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], s16 999// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1000 1001v_swmmac_bf16_16x16x32_bf16 v[12:15], 1.0, v[4:11], v16 1002// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1003 1004v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], 1.0, v16 1005// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1006 1007v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], 1.0 1008// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1009 1010v_swmmac_bf16_16x16x32_bf16 v[12:15], v[0:3], v[4:11], 1 1011// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1012 1013 1014 1015v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 1016// GFX12: v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 ; encoding: [0x06,0x40,0x54,0xcc,0x00,0x05,0x3a,0x1c] 1017 1018v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 clamp 1019// GFX12: v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 clamp ; encoding: [0x06,0xc0,0x54,0xcc,0x00,0x05,0x3a,0x1c] 1020 1021v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 op_sel:[1,0,0] 1022// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1023 1024v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,1,0] 1025// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1026 1027v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,0,1] 1028// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1029 1030v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[0,1,1] 1031// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1032 1033v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,0,1] 1034// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1035 1036v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,1,0] 1037// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1038 1039v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 index_key:1 1040// GFX12: v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 index_key:1 ; encoding: [0x06,0x48,0x54,0xcc,0x00,0x05,0x3a,0x1c] 1041 1042v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 index_key:2 1043// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1044 1045v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 index_key:3 1046// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1047 1048v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[1,0,0] 1049// GFX12: v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[1,0,0] ; encoding: [0x06,0x40,0x54,0xcc,0x00,0x05,0x3a,0x3c] 1050 1051v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,1,0] 1052// GFX12: v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,1,0] ; encoding: [0x06,0x40,0x54,0xcc,0x00,0x05,0x3a,0x5c] 1053 1054v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,0,1] 1055// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 1056 1057v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[1,0,0] 1058// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1059 1060v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,1,0] 1061// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1062 1063v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,0,1] 1064// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1065 1066v_swmmac_i32_16x16x32_iu8 v[6:13], s[0:1], v[2:5], v14 1067// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1068 1069v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], s[0:3], v14 1070// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1071 1072v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], s14 1073// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1074 1075v_swmmac_i32_16x16x32_iu8 v[6:13], 1, v[2:5], v14 1076// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1077 1078v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], 1, v14 1079// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1080 1081v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], 1 1082// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1083 1084v_swmmac_i32_16x16x32_iu8 v[6:13], v[0:1], v[2:5], 1.0 1085// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1086 1087 1088 1089v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 1090// GFX12: v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 ; encoding: [0x03,0x40,0x55,0xcc,0x00,0x03,0x2e,0x1c] 1091 1092v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 clamp 1093// GFX12: v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 clamp ; encoding: [0x03,0xc0,0x55,0xcc,0x00,0x03,0x2e,0x1c] 1094 1095v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 op_sel:[1,0,0] 1096// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1097 1098v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 op_sel:[0,1,0] 1099// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1100 1101v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 op_sel:[0,0,1] 1102// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1103 1104v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 op_sel_hi:[0,1,1] 1105// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1106 1107v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 op_sel_hi:[1,0,1] 1108// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1109 1110v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 op_sel_hi:[1,1,0] 1111// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1112 1113v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 index_key:1 1114// GFX12: v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 index_key:1 ; encoding: [0x03,0x48,0x55,0xcc,0x00,0x03,0x2e,0x1c] 1115 1116v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 index_key:2 1117// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1118 1119v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 index_key:3 1120// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1121 1122v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 neg_lo:[1,0,0] 1123// GFX12: v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 neg_lo:[1,0,0] ; encoding: [0x03,0x40,0x55,0xcc,0x00,0x03,0x2e,0x3c] 1124 1125v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 neg_lo:[0,1,0] 1126// GFX12: v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 neg_lo:[0,1,0] ; encoding: [0x03,0x40,0x55,0xcc,0x00,0x03,0x2e,0x5c] 1127 1128v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 neg_lo:[0,0,1] 1129// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 1130 1131v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 neg_hi:[1,0,0] 1132// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1133 1134v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 neg_hi:[0,1,0] 1135// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1136 1137v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], v11 neg_hi:[0,0,1] 1138// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1139 1140v_swmmac_i32_16x16x32_iu4 v[3:10], s0, v[1:2], v11 1141// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1142 1143v_swmmac_i32_16x16x32_iu4 v[3:10], v0, s[0:1], v11 1144// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1145 1146v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], s11 1147// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1148 1149v_swmmac_i32_16x16x32_iu4 v[3:10], 1, v[1:2], v11 1150// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1151 1152v_swmmac_i32_16x16x32_iu4 v[3:10], v0, 1, v11 1153// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1154 1155v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], 1 1156// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1157 1158v_swmmac_i32_16x16x32_iu4 v[3:10], v0, v[1:2], 1.0 1159// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1160 1161 1162 1163v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 1164// GFX12: v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 ; encoding: [0x06,0x40,0x56,0xcc,0x00,0x05,0x3a,0x1c] 1165 1166v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 clamp 1167// GFX12: v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 clamp ; encoding: [0x06,0xc0,0x56,0xcc,0x00,0x05,0x3a,0x1c] 1168 1169v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 op_sel:[1,0,0] 1170// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1171 1172v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,1,0] 1173// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1174 1175v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,0,1] 1176// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1177 1178v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[0,1,1] 1179// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1180 1181v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,0,1] 1182// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1183 1184v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,1,0] 1185// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1186 1187v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 index_key:1 1188// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1189 1190v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 index_key:2 1191// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1192 1193v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 index_key:3 1194// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1195 1196v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 neg_lo:[1,0,0] 1197// GFX12: v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 neg_lo:[1,0,0] ; encoding: [0x06,0x40,0x56,0xcc,0x00,0x05,0x3a,0x3c] 1198 1199v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,1,0] 1200// GFX12: v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,1,0] ; encoding: [0x06,0x40,0x56,0xcc,0x00,0x05,0x3a,0x5c] 1201 1202v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,0,1] 1203// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid neg_lo operand 1204 1205v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 neg_hi:[1,0,0] 1206// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1207 1208v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,1,0] 1209// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1210 1211v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,0,1] 1212// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1213 1214v_swmmac_i32_16x16x64_iu4 v[6:13], s[0:1], v[2:5], v14 1215// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1216 1217v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], s[0:3], v14 1218// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1219 1220v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], s14 1221// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1222 1223v_swmmac_i32_16x16x64_iu4 v[6:13], 1, v[2:5], v14 1224// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1225 1226v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], 1, v14 1227// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1228 1229v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], 1 1230// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1231 1232v_swmmac_i32_16x16x64_iu4 v[6:13], v[0:1], v[2:5], 1.0 1233// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1234 1235 1236 1237v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 1238// GFX12: v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 ; encoding: [0x06,0x40,0x57,0xcc,0x00,0x05,0x3a,0x1c] 1239 1240v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 clamp 1241// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1242 1243v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel:[1,0,0] 1244// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1245 1246v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,1,0] 1247// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1248 1249v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,0,1] 1250// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1251 1252v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[0,1,1] 1253// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1254 1255v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,0,1] 1256// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1257 1258v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,1,0] 1259// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1260 1261v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 index_key:1 1262// GFX12: v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 index_key:1 ; encoding: [0x06,0x48,0x57,0xcc,0x00,0x05,0x3a,0x1c] 1263 1264v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 index_key:2 1265// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1266 1267v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 index_key:3 1268// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1269 1270v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[1,0,0] 1271// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1272 1273v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,1,0] 1274// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1275 1276v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,0,1] 1277// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1278 1279v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[1,0,0] 1280// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1281 1282v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,1,0] 1283// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1284 1285v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,0,1] 1286// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1287 1288v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], s[0:1], v[2:5], v14 1289// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1290 1291v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], s[0:3], v14 1292// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1293 1294v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], s14 1295// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1296 1297v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], 1.0, v[2:5], v14 1298// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1299 1300v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], 1.0, v14 1301// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1302 1303v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], 1.0 1304// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1305 1306v_swmmac_f32_16x16x32_fp8_fp8 v[6:13], v[0:1], v[2:5], 1 1307// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1308 1309 1310 1311v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 1312// GFX12: v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 ; encoding: [0x06,0x40,0x58,0xcc,0x00,0x05,0x3a,0x1c] 1313 1314v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 clamp 1315// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1316 1317v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel:[1,0,0] 1318// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1319 1320v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,1,0] 1321// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1322 1323v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,0,1] 1324// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1325 1326v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[0,1,1] 1327// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1328 1329v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,0,1] 1330// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1331 1332v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,1,0] 1333// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1334 1335v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 index_key:1 1336// GFX12: v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 index_key:1 ; encoding: [0x06,0x48,0x58,0xcc,0x00,0x05,0x3a,0x1c] 1337 1338v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 index_key:2 1339// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1340 1341v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 index_key:3 1342// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1343 1344v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[1,0,0] 1345// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1346 1347v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,1,0] 1348// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1349 1350v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,0,1] 1351// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1352 1353v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[1,0,0] 1354// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1355 1356v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,1,0] 1357// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1358 1359v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,0,1] 1360// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1361 1362v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], s[0:1], v[2:5], v14 1363// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1364 1365v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], s[0:3], v14 1366// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1367 1368v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], s14 1369// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1370 1371v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], 1.0, v[2:5], v14 1372// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1373 1374v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], 1.0, v14 1375// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1376 1377v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], 1.0 1378// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1379 1380v_swmmac_f32_16x16x32_fp8_bf8 v[6:13], v[0:1], v[2:5], 1 1381// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1382 1383 1384 1385v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 1386// GFX12: v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 ; encoding: [0x06,0x40,0x59,0xcc,0x00,0x05,0x3a,0x1c] 1387 1388v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 clamp 1389// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1390 1391v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel:[1,0,0] 1392// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1393 1394v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,1,0] 1395// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1396 1397v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,0,1] 1398// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1399 1400v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[0,1,1] 1401// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1402 1403v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,0,1] 1404// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1405 1406v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,1,0] 1407// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1408 1409v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 index_key:1 1410// GFX12: v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 index_key:1 ; encoding: [0x06,0x48,0x59,0xcc,0x00,0x05,0x3a,0x1c] 1411 1412v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 index_key:2 1413// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1414 1415v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 index_key:3 1416// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1417 1418v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[1,0,0] 1419// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1420 1421v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,1,0] 1422// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1423 1424v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,0,1] 1425// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1426 1427v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[1,0,0] 1428// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1429 1430v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,1,0] 1431// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1432 1433v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,0,1] 1434// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1435 1436v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], s[0:1], v[2:5], v14 1437// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1438 1439v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], s[0:3], v14 1440// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1441 1442v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], s14 1443// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1444 1445v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], 1.0, v[2:5], v14 1446// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1447 1448v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], 1.0, v14 1449// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1450 1451v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], 1.0 1452// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1453 1454v_swmmac_f32_16x16x32_bf8_fp8 v[6:13], v[0:1], v[2:5], 1 1455// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1456 1457 1458 1459v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 1460// GFX12: v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 ; encoding: [0x06,0x40,0x5a,0xcc,0x00,0x05,0x3a,0x1c] 1461 1462v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 clamp 1463// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1464 1465v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel:[1,0,0] 1466// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1467 1468v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,1,0] 1469// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1470 1471v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel:[0,0,1] 1472// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1473 1474v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[0,1,1] 1475// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1476 1477v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,0,1] 1478// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1479 1480v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 op_sel_hi:[1,1,0] 1481// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1482 1483v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 index_key:1 1484// GFX12: v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 index_key:1 ; encoding: [0x06,0x48,0x5a,0xcc,0x00,0x05,0x3a,0x1c] 1485 1486v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 index_key:2 1487// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1488 1489v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 index_key:3 1490// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: out of range index_key 1491 1492v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[1,0,0] 1493// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1494 1495v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,1,0] 1496// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1497 1498v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_lo:[0,0,1] 1499// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1500 1501v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[1,0,0] 1502// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1503 1504v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,1,0] 1505// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1506 1507v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], v14 neg_hi:[0,0,1] 1508// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand. 1509 1510v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], s[0:1], v[2:5], v14 1511// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1512 1513v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], s[0:3], v14 1514// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1515 1516v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], s14 1517// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1518 1519v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], 1.0, v[2:5], v14 1520// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1521 1522v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], 1.0, v14 1523// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1524 1525v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], 1.0 1526// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1527 1528v_swmmac_f32_16x16x32_bf8_bf8 v[6:13], v[0:1], v[2:5], 1 1529// GFX12-ERR: :[[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction 1530