4
4
# RUN: not llvm-mc -triple riscv32 -mattr=-experimental-xqcia < %s 2>&1 \
5
5
# RUN: | FileCheck -check-prefixes=CHECK,CHECK-MINUS %s
6
6
7
- # CHECK: :[[@LINE+1]]:20: error: invalid operand for instruction
7
+ # CHECK-PLUS: :[[@LINE+2]]:20: error: register must be a GPR excluding zero (x0)
8
+ # CHECK-MINUS: :[[@LINE+1]]:20: error: invalid operand for instruction
8
9
qc.slasat x10, x3, 17
9
10
10
11
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
11
12
qc.slasat x10, x3
12
13
13
- # CHECK: :[[@LINE+1]]:11: error: invalid operand for instruction
14
+ # CHECK-PLUS: :[[@LINE+2]]:11: error: register must be a GPR excluding zero (x0)
15
+ # CHECK-MINUS: :[[@LINE+1]]:11: error: invalid operand for instruction
14
16
qc.slasat x0, x3, x17
15
17
16
- # CHECK: :[[@LINE+1]]:16: error: invalid operand for instruction
18
+ # CHECK-PLUS: :[[@LINE+2]]:16: error: register must be a GPR excluding zero (x0)
19
+ # CHECK-MINUS: :[[@LINE+1]]:16: error: invalid operand for instruction
17
20
qc.slasat x10, x0, x17
18
21
19
- # CHECK: :[[@LINE+1]]:20: error: invalid operand for instruction
22
+ # CHECK-PLUS: :[[@LINE+2]]:20: error: register must be a GPR excluding zero (x0)
23
+ # CHECK-MINUS: :[[@LINE+1]]:20: error: invalid operand for instruction
20
24
qc.slasat x10, x3, x0
21
25
22
26
# CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcia' (Qualcomm uC Arithmetic Extension)
23
27
qc.slasat x10, x3, x17
24
28
25
29
26
- # CHECK: :[[@LINE+1]]:21: error: invalid operand for instruction
30
+ # CHECK-PLUS: :[[@LINE+2]]:21: error: register must be a GPR excluding zero (x0)
31
+ # CHECK-MINUS: :[[@LINE+1]]:21: error: invalid operand for instruction
27
32
qc.sllsat x23, x25, 27
28
33
29
34
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
30
35
qc.sllsat x23, x25
31
36
32
- # CHECK: :[[@LINE+1]]:11: error: invalid operand for instruction
37
+ # CHECK-PLUS: :[[@LINE+2]]:11: error: register must be a GPR excluding zero (x0)
38
+ # CHECK-MINUS: :[[@LINE+1]]:11: error: invalid operand for instruction
33
39
qc.sllsat x0, x25, x27
34
40
35
- # CHECK: :[[@LINE+1]]:16: error: invalid operand for instruction
41
+ # CHECK-PLUS: :[[@LINE+2]]:16: error: register must be a GPR excluding zero (x0)
42
+ # CHECK-MINUS: :[[@LINE+1]]:16: error: invalid operand for instruction
36
43
qc.sllsat x23, x0, x27
37
44
38
- # CHECK: :[[@LINE+1]]:21: error: invalid operand for instruction
45
+ # CHECK-PLUS: :[[@LINE+2]]:21: error: register must be a GPR excluding zero (x0)
46
+ # CHECK-MINUS: :[[@LINE+1]]:21: error: invalid operand for instruction
39
47
qc.sllsat x23, x25, x0
40
48
41
49
# CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcia' (Qualcomm uC Arithmetic Extension)
42
50
qc.sllsat x23, x25, x27
43
51
44
52
45
- # CHECK: :[[@LINE+1]]:21: error: invalid operand for instruction
53
+ # CHECK-PLUS: :[[@LINE+2]]:21: error: register must be a GPR excluding zero (x0)
54
+ # CHECK-MINUS: :[[@LINE+1]]:21: error: invalid operand for instruction
46
55
qc.addsat x17, x14, 7
47
56
48
57
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
49
58
qc.addsat x17, x14
50
59
51
- # CHECK: :[[@LINE+1]]:11: error: invalid operand for instruction
60
+ # CHECK-PLUS: :[[@LINE+2]]:11: error: register must be a GPR excluding zero (x0)
61
+ # CHECK-MINUS: :[[@LINE+1]]:11: error: invalid operand for instruction
52
62
qc.addsat x0, x14, x7
53
63
54
- # CHECK: :[[@LINE+1]]:16: error: invalid operand for instruction
64
+ # CHECK-PLUS: :[[@LINE+2]]:16: error: register must be a GPR excluding zero (x0)
65
+ # CHECK-MINUS: :[[@LINE+1]]:16: error: invalid operand for instruction
55
66
qc.addsat x17, x0, x7
56
67
57
- # CHECK: :[[@LINE+1]]:21: error: invalid operand for instruction
68
+ # CHECK-PLUS: :[[@LINE+2]]:21: error: register must be a GPR excluding zero (x0)
69
+ # CHECK-MINUS: :[[@LINE+1]]:21: error: invalid operand for instruction
58
70
qc.addsat x17, x14, x0
59
71
60
72
# CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcia' (Qualcomm uC Arithmetic Extension)
61
73
qc.addsat x17, x14, x7
62
74
63
75
64
- # CHECK: :[[@LINE+1]]:21: error: invalid operand for instruction
76
+ # CHECK-PLUS: :[[@LINE+2]]:21: error: register must be a GPR excluding zero (x0)
77
+ # CHECK-MINUS: :[[@LINE+1]]:21: error: invalid operand for instruction
65
78
qc.addusat x8, x18, 28
66
79
67
80
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
68
81
qc.addusat x8, x18
69
82
70
- # CHECK: :[[@LINE+1]]:12: error: invalid operand for instruction
83
+ # CHECK-PLUS: :[[@LINE+2]]:12: error: register must be a GPR excluding zero (x0)
84
+ # CHECK-MINUS: :[[@LINE+1]]:12: error: invalid operand for instruction
71
85
qc.addusat x0, x18, x28
72
86
73
- # CHECK: :[[@LINE+1]]:16: error: invalid operand for instruction
87
+ # CHECK-PLUS: :[[@LINE+2]]:16: error: register must be a GPR excluding zero (x0)
88
+ # CHECK-MINUS: :[[@LINE+1]]:16: error: invalid operand for instruction
74
89
qc.addusat x8, x0, x28
75
90
76
- # CHECK: :[[@LINE+1]]:21: error: invalid operand for instruction
91
+ # CHECK-PLUS: :[[@LINE+2]]:21: error: register must be a GPR excluding zero (x0)
92
+ # CHECK-MINUS: :[[@LINE+1]]:21: error: invalid operand for instruction
77
93
qc.addusat x8, x18, x0
78
94
79
95
# CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcia' (Qualcomm uC Arithmetic Extension)
80
96
qc.addusat x8, x18, x28
81
97
82
98
83
- # CHECK: :[[@LINE+1]]:20: error: invalid operand for instruction
99
+ # CHECK-PLUS: :[[@LINE+2]]:20: error: register must be a GPR excluding zero (x0)
100
+ # CHECK-MINUS: :[[@LINE+1]]:20: error: invalid operand for instruction
84
101
qc.subsat x22, x2, 12
85
102
86
103
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
87
104
qc.subsat x22, x2
88
105
89
- # CHECK: :[[@LINE+1]]:11: error: invalid operand for instruction
106
+ # CHECK-PLUS: :[[@LINE+2]]:11: error: register must be a GPR excluding zero (x0)
107
+ # CHECK-MINUS: :[[@LINE+1]]:11: error: invalid operand for instruction
90
108
qc.subsat x0, x2, x12
91
109
92
- # CHECK: :[[@LINE+1]]:16: error: invalid operand for instruction
110
+ # CHECK-PLUS: :[[@LINE+2]]:16: error: register must be a GPR excluding zero (x0)
111
+ # CHECK-MINUS: :[[@LINE+1]]:16: error: invalid operand for instruction
93
112
qc.subsat x22, x0, x12
94
113
95
- # CHECK: :[[@LINE+1]]:20: error: invalid operand for instruction
114
+ # CHECK-PLUS: :[[@LINE+2]]:20: error: register must be a GPR excluding zero (x0)
115
+ # CHECK-MINUS: :[[@LINE+1]]:20: error: invalid operand for instruction
96
116
qc.subsat x22, x2, x0
97
117
98
118
# CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcia' (Qualcomm uC Arithmetic Extension)
99
119
qc.subsat x22, x2, x12
100
120
101
121
102
- # CHECK: :[[@LINE+1]]:21: error: invalid operand for instruction
122
+ # CHECK-PLUS: :[[@LINE+2]]:21: error: register must be a GPR excluding zero (x0)
123
+ # CHECK-MINUS: :[[@LINE+1]]:21: error: invalid operand for instruction
103
124
qc.subusat x9, x14, 17
104
125
105
126
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
106
127
qc.subusat x9, x14
107
128
108
- # CHECK: :[[@LINE+1]]:12: error: invalid operand for instruction
129
+ # CHECK-PLUS: :[[@LINE+2]]:12: error: register must be a GPR excluding zero (x0)
130
+ # CHECK-MINUS: :[[@LINE+1]]:12: error: invalid operand for instruction
109
131
qc.subusat x0, x14, x17
110
132
111
- # CHECK: :[[@LINE+1]]:16: error: invalid operand for instruction
133
+ # CHECK-PLUS: :[[@LINE+2]]:16: error: register must be a GPR excluding zero (x0)
134
+ # CHECK-MINUS: :[[@LINE+1]]:16: error: invalid operand for instruction
112
135
qc.subusat x9, x0, x17
113
136
114
- # CHECK: :[[@LINE+1]]:21: error: invalid operand for instruction
137
+ # CHECK-PLUS: :[[@LINE+2]]:21: error: register must be a GPR excluding zero (x0)
138
+ # CHECK-MINUS: :[[@LINE+1]]:21: error: invalid operand for instruction
115
139
qc.subusat x9, x14, x0
116
140
117
141
# CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcia' (Qualcomm uC Arithmetic Extension)
118
142
qc.subusat x9, x14, x17
119
143
120
144
121
- # CHECK: :[[@LINE+1]]:18: error: invalid operand for instruction
145
+ # CHECK-PLUS: :[[@LINE+2]]:18: error: register must be a GPR excluding zero (x0)
146
+ # CHECK-MINUS: :[[@LINE+1]]:18: error: invalid operand for instruction
122
147
qc.wrap x3, x30, 23
123
148
124
149
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
125
150
qc.wrap x3, x30
126
151
127
- # CHECK: :[[@LINE+1]]:9: error: invalid operand for instruction
152
+ # CHECK-PLUS: :[[@LINE+2]]:9: error: register must be a GPR excluding zero (x0)
153
+ # CHECK-MINUS: :[[@LINE+1]]:9: error: invalid operand for instruction
128
154
qc.wrap x0, x30, x23
129
155
130
- # CHECK: :[[@LINE+1]]:18: error: invalid operand for instruction
156
+ # CHECK-PLUS: :[[@LINE+2]]:18: error: register must be a GPR excluding zero (x0)
157
+ # CHECK-MINUS: :[[@LINE+1]]:18: error: invalid operand for instruction
131
158
qc.wrap x3, x30, x0
132
159
133
160
# CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcia' (Qualcomm uC Arithmetic Extension)
134
161
qc.wrap x3, x30, x23
135
162
136
163
137
- # CHECK: :[[@LINE+1]]:10: error: invalid operand for instruction
164
+ # CHECK-PLUS: :[[@LINE+2]]:10: error: register must be a GPR excluding zero (x0)
165
+ # CHECK-MINUS: :[[@LINE+1]]:10: error: invalid operand for instruction
138
166
qc.wrapi x0, 12 , 2047
139
167
140
- # CHECK: :[[@LINE+1]]:10: error: invalid operand for instruction
168
+ # CHECK-PLUS: :[[@LINE+2]]:10: error: register must be a GPR excluding zero (x0)
169
+ # CHECK-MINUS: :[[@LINE+1]]:10: error: invalid operand for instruction
141
170
qc.wrapi x0, x12, 2047
142
171
143
- # CHECK: :[[@LINE+1]]:14: error: invalid operand for instruction
172
+ # CHECK-PLUS: :[[@LINE+2]]:14: error: register must be a GPR excluding zero (x0)
173
+ # CHECK-MINUS: :[[@LINE+1]]:14: error: invalid operand for instruction
144
174
qc.wrapi x6, x0, 2047
145
175
146
176
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
@@ -153,48 +183,57 @@ qc.wrapi x6, x12, 2048
153
183
qc.wrapi x6, x12, 2047
154
184
155
185
156
- # CHECK: :[[@LINE+1]]:13: error: invalid operand for instruction
186
+ # CHECK-PLUS: :[[@LINE+2]]:13: error: register must be a GPR excluding zero (x0)
187
+ # CHECK-MINUS: :[[@LINE+1]]:13: error: invalid operand for instruction
157
188
qc.norm x3, 7
158
189
159
190
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
160
191
qc.norm x3
161
192
162
- # CHECK: :[[@LINE+1]]:9: error: invalid operand for instruction
193
+ # CHECK-PLUS: :[[@LINE+2]]:9: error: register must be a GPR excluding zero (x0)
194
+ # CHECK-MINUS: :[[@LINE+1]]:9: error: invalid operand for instruction
163
195
qc.norm x0, x7
164
196
165
- # CHECK: :[[@LINE+1]]:13: error: invalid operand for instruction
197
+ # CHECK-PLUS: :[[@LINE+2]]:13: error: register must be a GPR excluding zero (x0)
198
+ # CHECK-MINUS: :[[@LINE+1]]:13: error: invalid operand for instruction
166
199
qc.norm x3, x0
167
200
168
201
# CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcia' (Qualcomm uC Arithmetic Extension)
169
202
qc.norm x3, x7
170
203
171
204
172
- # CHECK: :[[@LINE+1]]:15: error: invalid operand for instruction
205
+ # CHECK-PLUS: :[[@LINE+2]]:15: error: register must be a GPR excluding zero (x0)
206
+ # CHECK-MINUS: :[[@LINE+1]]:15: error: invalid operand for instruction
173
207
qc.normu x11, 17
174
208
175
209
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
176
210
qc.normu x11
177
211
178
- # CHECK: :[[@LINE+1]]:10: error: invalid operand for instruction
212
+ # CHECK-PLUS: :[[@LINE+2]]:10: error: register must be a GPR excluding zero (x0)
213
+ # CHECK-MINUS: :[[@LINE+1]]:10: error: invalid operand for instruction
179
214
qc.normu x0, x17
180
215
181
- # CHECK: :[[@LINE+1]]:15: error: invalid operand for instruction
216
+ # CHECK-PLUS: :[[@LINE+2]]:15: error: register must be a GPR excluding zero (x0)
217
+ # CHECK-MINUS: :[[@LINE+1]]:15: error: invalid operand for instruction
182
218
qc.normu x11, x0
183
219
184
220
# CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcia' (Qualcomm uC Arithmetic Extension)
185
221
qc.normu x11, x17
186
222
187
223
188
- # CHECK: :[[@LINE+1]]:16: error: invalid operand for instruction
224
+ # CHECK-PLUS: :[[@LINE+2]]:16: error: register must be a GPR excluding zero (x0)
225
+ # CHECK-MINUS: :[[@LINE+1]]:16: error: invalid operand for instruction
189
226
qc.normeu x26, 31
190
227
191
228
# CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
192
229
qc.normeu x26
193
230
194
- # CHECK: :[[@LINE+1]]:11: error: invalid operand for instruction
231
+ # CHECK-PLUS: :[[@LINE+2]]:11: error: register must be a GPR excluding zero (x0)
232
+ # CHECK-MINUS: :[[@LINE+1]]:11: error: invalid operand for instruction
195
233
qc.normeu x0, x31
196
234
197
- # CHECK: :[[@LINE+1]]:16: error: invalid operand for instruction
235
+ # CHECK-PLUS: :[[@LINE+2]]:16: error: register must be a GPR excluding zero (x0)
236
+ # CHECK-MINUS: :[[@LINE+1]]:16: error: invalid operand for instruction
198
237
qc.normeu x26, x0
199
238
200
239
# CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcia' (Qualcomm uC Arithmetic Extension)
0 commit comments