1 # Xqcicli - Qualcomm uC Conditional Load Immediate Instructions
2 # RUN: not llvm-mc -triple riscv32 -mattr=+experimental-xqcicli < %s 2>&1 \
3 # RUN: | FileCheck -check-prefixes=CHECK,CHECK-PLUS %s
4 # RUN: not llvm-mc -triple riscv32 -mattr=-experimental-xqcicli < %s 2>&1 \
5 # RUN: | FileCheck -check-prefixes=CHECK,CHECK-MINUS %s
7 # CHECK: :[[@LINE+1]]:9: error: invalid operand for instruction
10 # CHECK: :[[@LINE+1]]:13: error: invalid operand for instruction
11 qc.lieq x2
, x0
, x6
, 10
13 # CHECK: :[[@LINE+1]]:17: error: invalid operand for instruction
14 qc.lieq x2
, x4
, x0
, 10
16 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
19 # CHECK-PLUS: :[[@LINE+1]]:21: error: immediate must be an integer in the range [-16, 15]
20 qc.lieq x2
, x4
, x6
, 40
22 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
23 qc.lieq x2
, x4
, x6
, 10
26 # CHECK: :[[@LINE+1]]:9: error: invalid operand for instruction
27 qc.lige x0
, x8
, x20
, 2
29 # CHECK: :[[@LINE+1]]:13: error: invalid operand for instruction
30 qc.lige x4
, x0
, x20
, 2
32 # CHECK: :[[@LINE+1]]:17: error: invalid operand for instruction
35 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
38 # CHECK-PLUS: :[[@LINE+1]]:22: error: immediate must be an integer in the range [-16, 15]
39 qc.lige x4
, x8
, x20
, -18
41 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
42 qc.lige x4
, x8
, x20
, 2
45 # CHECK: :[[@LINE+1]]:9: error: invalid operand for instruction
46 qc.lilt x0
, x9
, x10
, 3
48 # CHECK: :[[@LINE+1]]:14: error: invalid operand for instruction
49 qc.lilt x19
, x0
, x10
, 3
51 # CHECK: :[[@LINE+1]]:18: error: invalid operand for instruction
52 qc.lilt x19
, x9
, x0
, 3
54 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
57 # CHECK-PLUS: :[[@LINE+1]]:23: error: immediate must be an integer in the range [-16, 15]
58 qc.lilt x19
, x9
, x10
, 39
60 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
61 qc.lilt x19
, x9
, x10
, 3
64 # CHECK: :[[@LINE+1]]:9: error: invalid operand for instruction
65 qc.line x0
, x14
, x6
, 10
67 # CHECK: :[[@LINE+1]]:14: error: invalid operand for instruction
68 qc.line x18
, x0
, x6
, 10
70 # CHECK: :[[@LINE+1]]:19: error: invalid operand for instruction
71 qc.line x18
, x14
, x0
, 10
73 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
76 # CHECK-PLUS: :[[@LINE+1]]:23: error: immediate must be an integer in the range [-16, 15]
77 qc.line x18
, x14
, x6
, 100
79 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
80 qc.line x18
, x14
, x6
, 10
83 # CHECK: :[[@LINE+1]]:10: error: invalid operand for instruction
84 qc.ligeu x0
, x4
, x6
, 10
86 # CHECK: :[[@LINE+1]]:14: error: invalid operand for instruction
87 qc.ligeu x2
, x0
, x6
, 10
89 # CHECK: :[[@LINE+1]]:18: error: invalid operand for instruction
90 qc.ligeu x2
, x4
, x0
, 10
92 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
95 # CHECK-PLUS: :[[@LINE+1]]:22: error: immediate must be an integer in the range [-16, 15]
96 qc.ligeu x2
, x4
, x6
, 70
98 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
99 qc.ligeu x2
, x4
, x6
, 10
102 # CHECK: :[[@LINE+1]]:10: error: invalid operand for instruction
103 qc.liltu x0
, x19
, x12
, 13
105 # CHECK: :[[@LINE+1]]:14: error: invalid operand for instruction
106 qc.liltu x1
, x0
, x12
, 13
108 # CHECK: :[[@LINE+1]]:19: error: invalid operand for instruction
109 qc.liltu x1
, x19
, x0
, 13
111 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
112 qc.liltu x1
, x19
, x12
114 # CHECK-PLUS: :[[@LINE+1]]:24: error: immediate must be an integer in the range [-16, 15]
115 qc.liltu x1
, x19
, x12
, 73
117 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
118 qc.liltu x1
, x19
, x12
, 13
121 # CHECK: :[[@LINE+1]]:10: error: invalid operand for instruction
122 qc.lieqi x0
, x1
, 15, 12
124 # CHECK: :[[@LINE+1]]:14: error: invalid operand for instruction
125 qc.lieqi x7
, x0
, 15, 12
127 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
130 # CHECK-PLUS: :[[@LINE+1]]:18: error: immediate must be an integer in the range [-16, 15]
131 qc.lieqi x7
, x1
, 25, 12
133 # CHECK-PLUS: :[[@LINE+1]]:22: error: immediate must be an integer in the range [-16, 15]
134 qc.lieqi x7
, x1
, 15, -22
136 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
137 qc.lieqi x7
, x1
, 15, 12
140 # CHECK: :[[@LINE+1]]:10: error: invalid operand for instruction
141 qc.ligei x0
, x11
, -4, 9
143 # CHECK: :[[@LINE+1]]:15: error: invalid operand for instruction
144 qc.ligei x17
, x0
, -4, 9
146 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
147 qc.ligei x17
, x11
, -4
149 # CHECK-PLUS: :[[@LINE+1]]:20: error: immediate must be an integer in the range [-16, 15]
150 qc.ligei x17
, x11
, -24, 9
152 # CHECK-PLUS: :[[@LINE+1]]:24: error: immediate must be an integer in the range [-16, 15]
153 qc.ligei x17
, x11
, -4, 59
155 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
156 qc.ligei x17
, x11
, -4, 9
159 # CHECK: :[[@LINE+1]]:10: error: invalid operand for instruction
160 qc.lilti x0
, x11
, -14, 2
162 # CHECK: :[[@LINE+1]]:14: error: invalid operand for instruction
163 qc.lilti x9
, x0
, -14, 2
165 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
166 qc.lilti x9
, x11
, -14
168 # CHECK-PLUS: :[[@LINE+1]]:19: error: immediate must be an integer in the range [-16, 15]
169 qc.lilti x9
, x11
, -84, 2
171 # CHECK-PLUS: :[[@LINE+1]]:24: error: immediate must be an integer in the range [-16, 15]
172 qc.lilti x9
, x11
, -14, 52
174 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
175 qc.lilti x9
, x11
, -14, 2
178 # CHECK: :[[@LINE+1]]:10: error: invalid operand for instruction
179 qc.linei x0
, x1
, 10, 12
181 # CHECK: :[[@LINE+1]]:14: error: invalid operand for instruction
182 qc.linei x5
, x0
, 10, 12
184 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
187 # CHECK-PLUS: :[[@LINE+1]]:18: error: immediate must be an integer in the range [-16, 15]
188 qc.linei x5
, x1
, 130, 12
190 # CHECK-PLUS: :[[@LINE+1]]:22: error: immediate must be an integer in the range [-16, 15]
191 qc.linei x5
, x1
, 10, 124
193 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
194 qc.linei x5
, x1
, 10, 12
197 # CHECK: :[[@LINE+1]]:11: error: invalid operand for instruction
198 qc.ligeui x0
, x12
, 7, -12
200 # CHECK: :[[@LINE+1]]:15: error: invalid operand for instruction
201 qc.ligeui x2
, x0
, 7, -12
203 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
206 # CHECK-PLUS: :[[@LINE+1]]:20: error: immediate must be an integer in the range [0, 31]
207 qc.ligeui x2
, x12
, -7, -12
209 # CHECK-PLUS: :[[@LINE+1]]:23: error: immediate must be an integer in the range [-16, 15]
210 qc.ligeui x2
, x12
, 7, -17
212 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
213 qc.ligeui x2
, x12
, 7, -12
216 # CHECK: :[[@LINE+1]]:11: error: invalid operand for instruction
217 qc.liltui x0
, x25
, 31, 12
219 # CHECK: :[[@LINE+1]]:15: error: invalid operand for instruction
220 qc.liltui x3
, x0
, 31, 12
222 # CHECK: :[[@LINE+1]]:1: error: too few operands for instruction
223 qc.liltui x3
, x25
, 31
225 # CHECK-PLUS: :[[@LINE+1]]:20: error: immediate must be an integer in the range [0, 31]
226 qc.liltui x3
, x25
, 32, 12
228 # CHECK-PLUS: :[[@LINE+1]]:24: error: immediate must be an integer in the range [-16, 15]
229 qc.liltui x3
, x25
, 31, 112
231 # CHECK-MINUS: :[[@LINE+1]]:1: error: instruction requires the following: 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
232 qc.liltui x3
, x25
, 31, 12