[AMDGPU] Check for immediate SrcC in mfma in AsmParser
[llvm-core.git] / test / MC / AMDGPU / vop3p-err.s
blob9dfd28a4b9f9464eb8f31aafa396daee11240643
1 // RUN: not llvm-mc -arch=amdgcn -mcpu=gfx900 -show-encoding %s 2>&1 | FileCheck -check-prefix=GFX9 %s
3 // GFX9: 25: error: invalid operand for instruction
4 v_pk_add_u16 v1, v2, v3 op_sel
6 // GFX9: 32: error: expected a left square bracket
7 v_pk_add_u16 v1, v2, v3 op_sel:
9 // GFX9: 33: error: unknown token in expression
10 v_pk_add_u16 v1, v2, v3 op_sel:[
12 // GFX9: 33: error: unknown token in expression
13 v_pk_add_u16 v1, v2, v3 op_sel:[]
15 // GFX9: 33: error: unknown token in expression
16 v_pk_add_u16 v1, v2, v3 op_sel:[,]
18 // XXGFX9: 34: error: failed parsing operand.
19 // v_pk_add_u16 v1, v2, v3 op_sel:[0]
21 // GFX9: 35: error: expected a comma
22 v_pk_add_u16 v1, v2, v3 op_sel:[0 0]
24 // GFX9: 35: error: unknown token in expression
25 v_pk_add_u16 v1, v2, v3 op_sel:[0,]
27 // GFX9: 33: error: unknown token in expression
28 v_pk_add_u16 v1, v2, v3 op_sel:[,0]
30 // GFX9: 42: error: expected a closing square bracket
31 v_max3_f16 v5, v1, v2, v3 op_sel:[1,1,1,1,
33 // GFX9: 42: error: expected a closing square bracket
34 v_max3_f16 v5, v1, v2, v3 op_sel:[1,1,1,1[
36 // GFX9: 43: error: expected a closing square bracket
37 v_max3_f16 v5, v1, v2, v3 op_sel:[1,1,1,1 1
39 // GFX9: 35: error: invalid op_sel value.
40 v_pk_add_u16 v1, v2, v3 op_sel:[0,2]
42 // GFX9: 33: error: invalid op_sel value.
43 v_pk_add_u16 v1, v2, v3 op_sel:[2,0]
45 // GFX9: 33: error: invalid op_sel value.
46 v_pk_add_u16 v1, v2, v3 op_sel:[-1,0]
48 // GFX9: 35: error: invalid op_sel value.
49 v_pk_add_u16 v1, v2, v3 op_sel:[0,-1]
51 // GFX9: 40: error: expected a closing square bracket
52 v_pk_add_u16 v1, v2, v3 op_sel:[0,0,0,0,0]
54 // XXGFX9: invalid operand for instruction
55 v_pk_add_u16 v1, v2, v3 neg_lo:[0,0]
58 // Regular modifiers on packed instructions
61 // FIXME: should be invalid operand for instruction
62 // GFX9: :18: error: not a valid operand.
63 v_pk_add_f16 v1, |v2|, v3
65 // GFX9: :18: error: not a valid operand
66 v_pk_add_f16 v1, abs(v2), v3
68 // GFX9: :22: error: not a valid operand.
69 v_pk_add_f16 v1, v2, |v3|
71 // GFX9: :22: error: not a valid operand.
72 v_pk_add_f16 v1, v2, abs(v3)
74 // GFX9: :18: error: not a valid operand.
75 v_pk_add_f16 v1, -v2, v3
77 // GFX9: :22: error: not a valid operand.
78 v_pk_add_f16 v1, v2, -v3
80 // GFX9: :18: error: not a valid operand.
81 v_pk_add_u16 v1, abs(v2), v3
83 // GFX9: :18: error: not a valid operand.
84 v_pk_add_u16 v1, -v2, v3
87 // Constant bus restrictions
90 // GFX9: invalid operand (violates constant bus restrictions)
91 v_pk_add_f16 v255, s1, s2