220 lines · plain
1// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1100 %s 2>&1 | FileCheck --check-prefix=GFX11 --implicit-check-not=error: %s2 3// op_sel not allowed in dot opcodes with 4- or 8-bit packed data4 5v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[0,0]6// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.7 8v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[0,1]9// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.10 11v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[1,0]12// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.13 14v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[1,1]15// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.16 17v_dot4_i32_iu8 v0, v1, v2, v3 op_sel_hi:[0,0]18// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.19 20v_dot4_i32_iu8 v0, v1, v2, v3 op_sel_hi:[0,1]21// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.22 23v_dot4_i32_iu8 v0, v1, v2, v3 op_sel_hi:[1,0]24// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.25 26v_dot4_i32_iu8 v0, v1, v2, v3 op_sel_hi:[1,1]27// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.28 29v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[0,0]30// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.31 32v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[0,1]33// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.34 35v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[1,0]36// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.37 38v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[1,1]39// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.40 41v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[0,0]42// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.43 44v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[0,1]45// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.46 47v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[1,0]48// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.49 50v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[1,1]51// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.52 53v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[0,0]54// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.55 56v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[0,1]57// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.58 59v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[1,0]60// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.61 62v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[1,1]63// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.64 65v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[0,0]66// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.67 68v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[0,1]69// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.70 71v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[1,0]72// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.73 74v_dot4_i32_iu8 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[1,1]75// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.76 77v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[0,0]78// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.79 80v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[0,1]81// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.82 83v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[1,0]84// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.85 86v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[1,1]87// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.88 89v_dot4_u32_u8 v0, v1, v2, v3 op_sel_hi:[0,0]90// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.91 92v_dot4_u32_u8 v0, v1, v2, v3 op_sel_hi:[0,1]93// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.94 95v_dot4_u32_u8 v0, v1, v2, v3 op_sel_hi:[1,0]96// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.97 98v_dot4_u32_u8 v0, v1, v2, v3 op_sel_hi:[1,1]99// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.100 101v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[0,0]102// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.103 104v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[0,1]105// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.106 107v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[1,0]108// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.109 110v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[1,1]111// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.112 113v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[0,0]114// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.115 116v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[0,1]117// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.118 119v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[1,0]120// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.121 122v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[1,1]123// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.124 125v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[0,0]126// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.127 128v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[0,1]129// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.130 131v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[1,0]132// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.133 134v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[1,1]135// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.136 137v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[0,0]138// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.139 140v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[0,1]141// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.142 143v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[1,0]144// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.145 146v_dot4_u32_u8 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[1,1]147// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.148 149v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[0,0]150// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.151 152v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[0,1]153// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.154 155v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[1,0]156// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.157 158v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[1,1]159// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.160 161v_dot8_u32_u4 v0, v1, v2, v3 op_sel_hi:[0,0]162// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.163 164v_dot8_u32_u4 v0, v1, v2, v3 op_sel_hi:[0,1]165// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.166 167v_dot8_u32_u4 v0, v1, v2, v3 op_sel_hi:[1,0]168// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.169 170v_dot8_u32_u4 v0, v1, v2, v3 op_sel_hi:[1,1]171// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.172 173v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[0,0]174// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.175 176v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[0,1]177// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.178 179v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[1,0]180// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.181 182v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[0,0] op_sel_hi:[1,1]183// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.184 185v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[0,0]186// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.187 188v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[0,1]189// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.190 191v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[1,0]192// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.193 194v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[0,1] op_sel_hi:[1,1]195// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.196 197v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[0,0]198// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.199 200v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[0,1]201// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.202 203v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[1,0]204// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.205 206v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[1,0] op_sel_hi:[1,1]207// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.208 209v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[0,0]210// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.211 212v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[0,1]213// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.214 215v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[1,0]216// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.217 218v_dot8_u32_u4 v0, v1, v2, v3 op_sel:[1,1] op_sel_hi:[1,1]219// GFX11: :[[@LINE-1]]:{{[0-9]+}}: error: not a valid operand.220