1 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx1100
%s
2>&1 | FileCheck
--check-prefix
=GFX11
--implicit-check-
not=error
: %s
4 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: too few operands for instruction
6 s_delay_alu instid9
(VALU_DEP_1
)
7 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid field name instid9
9 s_delay_alu instid0
(VALU_DEP_9
)
10 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid value name VALU_DEP_9
12 s_delay_alu instid0
(1)
13 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: expected
a value name
15 s_delay_alu instid0
(VALU_DEP_9|
)
16 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: expected
a right parenthesis
18 s_delay_alu instid0
(VALU_DEP_1
) |
(SALU_CYCLE_1
)
19 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: expected
a field name
21 s_delay_alu instid0
(VALU_DEP_1
) | SALU_CYCLE_1
)
22 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: expected
a left parenthesis
24 lds_direct_load v15 wait_vdst
:16
25 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid wait_vdst value.
27 lds_direct_load v15 wait_vdst
28 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
30 v_interp_p10_f32 v0
, v1
, v2
, v3 wait_exp
:8
31 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid wait_exp value.
33 v_interp_p2_f32 v0
, -v1
, v2
, v3 wait_exp
34 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
36 global_atomic_cmpswap_x2 v
[1:4], v3
, v
[5:8], off offset
:2047 glc
37 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
39 // s_waitcnt_depctr is called s_wait_alu on GFX12
, but its semantics
and
40 // encoding are identical. Even so
, the new name should
be rejected on GFX11
42 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: instruction
not supported on this GPU
44 v_cubesc_f32_e64_dpp v5
, v1
, v2
, 12345678 row_shr
:4 row_mask
:0xf bank_mask
:0xf
45 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
47 v_add3_u32_e64_dpp v5
, v1
, v2
, 49812340 dpp8
:[7,6,5,4,3,2,1,0]
48 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
50 v_add3_u32_e64_dpp v5
, v1
, s1
, v0 dpp8
:[7,6,5,4,3,2,1,0]
51 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
53 v_add3_u32_e64_dpp v5
, v1
, 42, v0 dpp8
:[7,6,5,4,3,2,1,0]
54 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: src1 immediate operand invalid for instruction
56 v_add3_u32_e64_dpp v5
, v1
, s2
, v3 quad_perm
:[3,2,1,0] row_mask
:0xf bank_mask
:0xf
57 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
59 v_add3_u32_e64_dpp v5
, v1
, 42, v3 quad_perm
:[3,2,1,0] row_mask
:0xf bank_mask
:0xf
60 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: src1 immediate operand invalid for instruction
62 v_cvt_f32_i32_e64_dpp v5
, s1 dpp8
:[7,6,5,4,3,2,1,0]
63 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
65 v_cvt_f32_i32_e64_dpp v5
, s1 row_shl
:15 row_mask
:0xf bank_mask
:0xf
66 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
68 v_cvt_f16_u16_e64_dpp v5
, s1 dpp8
:[7,6,5,4,3,2,1,0]
69 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
71 v_cvt_f16_u16_e64_dpp v5
, s1 row_shl
:1 row_mask
:0xf bank_mask
:0xf
72 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
74 ; disallow space between colons
75 v_dual_mul_f32 v0
, v0
, v2
: : v_dual_mul_f32 v1
, v1
, v3
76 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: unknown token in expression
78 v_dot4c_i32_i8 v0
, v1
, v2
79 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: instruction
not supported on this GPU
81 v_cmp_class_f16_e64_dpp s105
, s2
, v2 row_ror
:15
82 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
84 v_cmpx_class_f32_e64_dpp s1
, v2 dpp8
:[7,6,5,4,3,2,1,0] fi
:1
85 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
87 v_fma_mix_f32_e64_dpp v5
, s1
, v3
, v4 quad_perm
:[3,2,1,0]
88 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
90 v_fma_mix_f32_e64_dpp v5
, v1
, s3
, v4 quad_perm
:[3,2,1,0]
91 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
93 v_fma_mix_f32_e64_dpp v5
, s1
, v3
, v4 dpp8
:[7,6,5,4,3,2,1,0]
94 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
96 v_fma_mix_f32_e64_dpp v5
, v1
, s3
, v4 dpp8
:[7,6,5,4,3,2,1,0]
97 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
99 v_fma_mixhi_f16_e64_dpp v5
, v1
, 0, v4 quad_perm
:[3,2,1,0]
100 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
102 v_fma_mixlo_f16_e64_dpp v5
, v1
, 1, v4 dpp8
:[7,6,5,4,3,2,1,0]
103 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
105 buffer_store_d16_hi_format_x v
[1:2], off
, s
[12:15], s4 offset
:4095 glc slc dlc tfe
106 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: TFE modifier has no meaning for store instructions
108 v_fmac_f16_e64_dpp v5
, -16, v3 dpp8
:[7,6,5,4,3,2,1,0]
109 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
111 v_fmac_f16_e64_dpp v5
, v2
, s3 dpp8
:[7,6,5,4,3,2,1,0]
112 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
114 v_fmac_f16_e64_dpp v5
, v2
, 0x1234 dpp8
:[7,6,5,4,3,2,1,0]
115 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
117 v_fmac_f16_e64_dpp v5
, 0x1234, v3 quad_perm
:[3,2,1,0]
118 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
120 v_fmac_f16_e64_dpp v5
, s2
, v3 quad_perm
:[3,2,1,0]
121 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
123 v_fmac_f16_e64_dpp v5
, v2
, 1.0 quad_perm
:[3,2,1,0]
124 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: src1 immediate operand invalid for instruction
126 v_fmac_f32_e64_dpp v5
, s2
, v3 dpp8
:[7,6,5,4,3,2,1,0]
127 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
129 v_fmac_f32_e64_dpp v5
, 0x1234, v3 dpp8
:[7,6,5,4,3,2,1,0]
130 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
132 v_fmac_f32_e64_dpp v5
, v2
, 1 dpp8
:[7,6,5,4,3,2,1,0]
133 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: src1 immediate operand invalid for instruction
135 v_fmac_f32_e64_dpp v5
, -1.0, v3 quad_perm
:[3,2,1,0]
136 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
138 v_fmac_f32_e64_dpp v5
, v2
, s3 quad_perm
:[3,2,1,0]
139 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
141 v_fmac_f32_e64_dpp v5
, v2
, 0x1234 quad_perm
:[3,2,1,0]
142 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
144 s_load_dword s1
, s
[2:3], s0
0x1
145 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
147 scratch_store_b128 off
, v
[2:5], s0 offset
:8000000
148 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: expected
a 13-bit signed offset
150 flat_atomic_add_f32 v1
, v
[0:1], v2 offset
:-1
151 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: expected
a 12-bit unsigned offset
153 s_load_b96 s
[20:22], s
[2:3], s0
154 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: instruction
not supported on this GPU
156 s_buffer_load_b96 s
[20:22], s
[4:7], s0
157 // GFX11
: :[[@LINE-
1]]:{{[0-9]+}}: error
: instruction
not supported on this GPU