1 // RUN
: not llvm-mc
-arch
=amdgcn
%s
2>&1 | FileCheck
--check-prefixes
=GCN
,SICI
--implicit-check-
not=error
: %s
2 // RUN
: not llvm-mc
-arch
=amdgcn
-mcpu
=tahiti
%s
2>&1 | FileCheck
--check-prefixes
=GCN
,SICI
--implicit-check-
not=error
: %s
3 // RUN
: not llvm-mc
-arch
=amdgcn
-mcpu
=fiji
%s
2>&1 | FileCheck
--check-prefixes
=GCN
,VI
--implicit-check-
not=error
: %s
4 // RUN
: not llvm-mc
-arch
=amdgcn
-mcpu
=gfx1010
%s
2>&1 | FileCheck
--check-prefixes
=GCN
,GFX10
--implicit-check-
not=error
: %s
6 //===----------------------------------------------------------------------===//
8 //===----------------------------------------------------------------------===//
10 s_sendmsg sendmsg
(MSG_INTERRUPTX
)
11 // GCN
: error
: expected
a message name
or an absolute expression
13 s_sendmsg sendmsg
(1 -)
14 // GCN
: error
: unknown token in expression
16 s_sendmsg sendmsg
(MSG_INTERRUPT
, 0)
17 // GCN
: error
: message does
not support operations
19 s_sendmsg sendmsg
(MSG_INTERRUPT
, 0, 0)
20 // GCN
: error
: message does
not support operations
22 s_sendmsg sendmsg
(MSG_GS
)
23 // GCN
: error
: missing message operation
25 s_sendmsg sendmsg
(MSG_GS
, GS_OP_NOP
)
26 // GCN
: error
: invalid operation id
28 s_sendmsg sendmsg
(MSG_GS
, SYSMSG_OP_ECC_ERR_INTERRUPT
)
29 // GCN
: error
: expected an operation name
or an absolute expression
31 s_sendmsg sendmsg
(MSG_GS
, 0)
32 // GCN
: error
: invalid operation id
34 s_sendmsg sendmsg
(MSG_GS
, -1)
35 // GCN
: error
: invalid operation id
37 s_sendmsg sendmsg
(MSG_GS
, 4)
38 // GCN
: error
: invalid operation id
40 s_sendmsg sendmsg
(MSG_GS
, 8)
41 // GCN
: error
: invalid operation id
43 s_sendmsg sendmsg
(15, -1)
44 // GCN
: error
: invalid operation id
46 s_sendmsg sendmsg
(15, 8)
47 // GCN
: error
: invalid operation id
49 s_sendmsg sendmsg
(MSG_GS
, GS_OP_CUT
, 0, 0)
50 // GCN
: error
: expected
a closing parenthesis
52 s_sendmsg sendmsg
(MSG_GSX
, GS_OP_CUT
, 0)
53 // GCN
: error
: expected
a message name
or an absolute expression
55 s_sendmsg sendmsg
(MSG_GS
, GS_OP_CUTX
, 0)
56 // GCN
: error
: expected an operation name
or an absolute expression
58 s_sendmsg sendmsg
(MSG_GS
, 1 -)
59 // GCN
: error
: unknown token in expression
61 s_sendmsg sendmsg
(MSG_GS
, GS_OP_CUT
, 4)
62 // GCN
: error
: invalid message stream id
64 s_sendmsg sendmsg
(MSG_GS
, GS_OP_CUT
, 1 -)
65 // GCN
: error
: unknown token in expression
67 s_sendmsg sendmsg
(2, 3, 0, 0)
68 // GCN
: error
: expected
a closing parenthesis
70 s_sendmsg sendmsg
(2, 2, -1)
71 // GCN
: error
: invalid message stream id
73 s_sendmsg sendmsg
(2, 2, 4)
74 // GCN
: error
: invalid message stream id
76 s_sendmsg sendmsg
(2, 2, 0, 0)
77 // GCN
: error
: expected
a closing parenthesis
79 s_sendmsg sendmsg
(MSG_GS_DONE
, GS_OP_NOP
, 0)
80 // GCN
: error
: message operation does
not support streams
82 s_sendmsg sendmsg
(MSG_GS_DONE
, 0, 0)
83 // GCN
: error
: message operation does
not support streams
85 s_sendmsg sendmsg
(MSG_SAVEWAVE
)
86 // SICI
: error
: invalid message id
88 s_sendmsg sendmsg
(MSG_STALL_WAVE_GEN
)
89 // SICI
: error
: invalid message id
90 // VI
: error
: invalid message id
92 s_sendmsg sendmsg
(MSG_HALT_WAVES
)
93 // SICI
: error
: invalid message id
94 // VI
: error
: invalid message id
96 s_sendmsg sendmsg
(MSG_ORDERED_PS_DONE
)
97 // SICI
: error
: invalid message id
98 // VI
: error
: invalid message id
100 s_sendmsg sendmsg
(MSG_EARLY_PRIM_DEALLOC
)
101 // SICI
: error
: invalid message id
102 // VI
: error
: invalid message id
103 // GFX10
: error
: invalid message id
105 s_sendmsg sendmsg
(MSG_GS_ALLOC_REQ
)
106 // VI
: error
: invalid message id
107 // SICI
: error
: invalid message id
109 s_sendmsg sendmsg
(MSG_GS_ALLOC_REQ
, 0)
110 // VI
: error
: invalid message id
111 // SICI
: error
: invalid message id
112 // GFX10
: error
: message does
not support operations
114 s_sendmsg sendmsg
(MSG_GET_DOORBELL
)
115 // SICI
: error
: invalid message id
116 // VI
: error
: invalid message id
118 s_sendmsg sendmsg
(MSG_GET_DDID
)
119 // SICI
: error
: invalid message id
120 // VI
: error
: invalid message id
122 s_sendmsg sendmsg
(-1)
123 // VI
: error
: invalid message id
124 // SICI
: error
: invalid message id
125 // GFX10
: error
: invalid message id
127 s_sendmsg sendmsg
(16)
128 // VI
: error
: invalid message id
129 // SICI
: error
: invalid message id
130 // GFX10
: error
: invalid message id
132 s_sendmsg sendmsg
(MSG_SYSMSG
)
133 // GCN
: error
: missing message operation
135 s_sendmsg sendmsg
(MSG_SYSMSG
, SYSMSG_OP_ECC_ERR_INTERRUPT
, 0)
136 // GCN
: error
: message operation does
not support streams
138 s_sendmsg sendmsg
(MSG_SYSMSG
, 0)
139 // GCN
: error
: invalid operation id
141 s_sendmsg sendmsg
(MSG_SYSMSG
, 5)
142 // GCN
: error
: invalid operation id
144 //===----------------------------------------------------------------------===//
146 //===----------------------------------------------------------------------===//
148 s_waitcnt lgkmcnt
(16)
149 // VI
: error
: too large value for lgkmcnt
150 // SICI
: error
: too large value for lgkmcnt
152 s_waitcnt lgkmcnt
(64)
153 // GCN
: error
: too large value for lgkmcnt
156 // GCN
: error
: too large value for expcnt
159 // VI
: error
: too large value for vmcnt
160 // SICI
: error
: too large value for vmcnt
163 // GFX10
: error
: too large value for vmcnt
164 // SICI
: error
: too large value for vmcnt
165 // VI
: error
: too large value for vmcnt
167 s_waitcnt vmcnt
(0xFFFFFFFFFFFF0000)
168 // GCN
: error
: too large value for vmcnt
170 s_waitcnt vmcnt
(0), expcnt
(0), lgkmcnt
(0),
171 // GCN
: error
: expected
a counter name
173 s_waitcnt vmcnt
(0) & expcnt
(0) & lgkmcnt
(0)&
174 // GCN
: error
: expected
a counter name
176 s_waitcnt vmcnt
(0) & expcnt
(0) & x
177 // GCN
: error
: expected
a left parenthesis
179 s_waitcnt vmcnt
(0) & expcnt
(0) x
180 // GCN
: error
: expected
a left parenthesis
182 s_waitcnt vmcnt
(0) & expcnt
(0) & 1
183 // GCN
: error
: expected
a counter name
185 s_waitcnt vmcnt
(0) & expcnt
(0) 1
186 // GCN
: error
: expected
a counter name
188 s_waitcnt vmcnt
(0) & expcnt
(0) x
(0)
189 // GCN
: error
: invalid counter name x
192 // GCN
: error
: expected absolute expression
195 // GCN
: error
: expected absolute expression
198 // GCN
: error
: expected
a closing parenthesis
200 s_branch
0x80000000ffff
201 // GCN
: error
: expected
a 16-bit signed jump offset
204 // GCN
: error
: expected
a 16-bit signed jump offset
207 // GCN
: error
: expected
a 16-bit signed jump offset
210 // GCN
: error
: expected
a 16-bit signed jump offset
213 // GCN
: error
: invalid operand for instruction
216 // GCN
: error
: not a valid operand