[LLVM][IR] Use splat syntax when printing ConstantExpr based splats. (#116856)
[llvm-project.git] / llvm / test / CodeGen / RISCV / GlobalISel / instruction-select / icmp-rv32.mir
blobcf0baeb9527c9556f2633c108198dbb61c863fb9
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -mtriple=riscv32 -run-pass=instruction-select -simplify-mir \
3 # RUN: -verify-machineinstrs %s -o - | FileCheck %s
4 ---
5 name:            cmp_ult_i32
6 legalized:       true
7 regBankSelected: true
8 tracksRegLiveness: true
9 body:             |
10   bb.0.entry:
11     liveins: $x10, $x11
13     ; CHECK-LABEL: name: cmp_ult_i32
14     ; CHECK: liveins: $x10, $x11
15     ; CHECK-NEXT: {{  $}}
16     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
17     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
18     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[COPY]], [[COPY1]]
19     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
20     ; CHECK-NEXT: PseudoRET implicit $x10
21     %0:gprb(s32) = COPY $x10
22     %1:gprb(s32) = COPY $x11
23     %2:gprb(s32) = G_ICMP intpred(ult), %0, %1
24     $x10 = COPY %2(s32)
25     PseudoRET implicit $x10
27 ...
28 ---
29 name:            cmp_slt_i32
30 legalized:       true
31 regBankSelected: true
32 tracksRegLiveness: true
33 body:             |
34   bb.0.entry:
35     liveins: $x10, $x11
37     ; CHECK-LABEL: name: cmp_slt_i32
38     ; CHECK: liveins: $x10, $x11
39     ; CHECK-NEXT: {{  $}}
40     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
41     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
42     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[COPY]], [[COPY1]]
43     ; CHECK-NEXT: $x10 = COPY [[SLT]]
44     ; CHECK-NEXT: PseudoRET implicit $x10
45     %0:gprb(s32) = COPY $x10
46     %1:gprb(s32) = COPY $x11
47     %2:gprb(s32) = G_ICMP intpred(slt), %0, %1
48     $x10 = COPY %2(s32)
49     PseudoRET implicit $x10
51 ...
52 ---
53 name:            cmp_ugt_i32
54 legalized:       true
55 regBankSelected: true
56 tracksRegLiveness: true
57 body:             |
58   bb.0.entry:
59     liveins: $x10, $x11
61     ; CHECK-LABEL: name: cmp_ugt_i32
62     ; CHECK: liveins: $x10, $x11
63     ; CHECK-NEXT: {{  $}}
64     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
65     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
66     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[COPY1]], [[COPY]]
67     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
68     ; CHECK-NEXT: PseudoRET implicit $x10
69     %0:gprb(s32) = COPY $x10
70     %1:gprb(s32) = COPY $x11
71     %2:gprb(s32) = G_ICMP intpred(ugt), %0, %1
72     $x10 = COPY %2(s32)
73     PseudoRET implicit $x10
75 ...
76 ---
77 name:            cmp_sgt_i32
78 legalized:       true
79 regBankSelected: true
80 tracksRegLiveness: true
81 body:             |
82   bb.0.entry:
83     liveins: $x10, $x11
85     ; CHECK-LABEL: name: cmp_sgt_i32
86     ; CHECK: liveins: $x10, $x11
87     ; CHECK-NEXT: {{  $}}
88     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
89     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
90     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[COPY1]], [[COPY]]
91     ; CHECK-NEXT: $x10 = COPY [[SLT]]
92     ; CHECK-NEXT: PseudoRET implicit $x10
93     %0:gprb(s32) = COPY $x10
94     %1:gprb(s32) = COPY $x11
95     %2:gprb(s32) = G_ICMP intpred(sgt), %0, %1
96     $x10 = COPY %2(s32)
97     PseudoRET implicit $x10
99 ...
101 name:            cmp_eq_i32
102 legalized:       true
103 regBankSelected: true
104 tracksRegLiveness: true
105 body:             |
106   bb.0.entry:
107     liveins: $x10, $x11
109     ; CHECK-LABEL: name: cmp_eq_i32
110     ; CHECK: liveins: $x10, $x11
111     ; CHECK-NEXT: {{  $}}
112     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
113     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
114     ; CHECK-NEXT: [[XOR:%[0-9]+]]:gpr = XOR [[COPY]], [[COPY1]]
115     ; CHECK-NEXT: [[SLTIU:%[0-9]+]]:gpr = SLTIU [[XOR]], 1
116     ; CHECK-NEXT: $x10 = COPY [[SLTIU]]
117     ; CHECK-NEXT: PseudoRET implicit $x10
118     %0:gprb(s32) = COPY $x10
119     %1:gprb(s32) = COPY $x11
120     %2:gprb(s32) = G_ICMP intpred(eq), %0, %1
121     $x10 = COPY %2(s32)
122     PseudoRET implicit $x10
126 name:            cmp_ne_i32
127 legalized:       true
128 regBankSelected: true
129 tracksRegLiveness: true
130 body:             |
131   bb.0.entry:
132     liveins: $x10, $x11
134     ; CHECK-LABEL: name: cmp_ne_i32
135     ; CHECK: liveins: $x10, $x11
136     ; CHECK-NEXT: {{  $}}
137     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
138     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
139     ; CHECK-NEXT: [[XOR:%[0-9]+]]:gpr = XOR [[COPY]], [[COPY1]]
140     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU $x0, [[XOR]]
141     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
142     ; CHECK-NEXT: PseudoRET implicit $x10
143     %0:gprb(s32) = COPY $x10
144     %1:gprb(s32) = COPY $x11
145     %2:gprb(s32) = G_ICMP intpred(ne), %0, %1
146     $x10 = COPY %2(s32)
147     PseudoRET implicit $x10
151 name:            cmp_ule_i32
152 legalized:       true
153 regBankSelected: true
154 tracksRegLiveness: true
155 body:             |
156   bb.0.entry:
157     liveins: $x10, $x11
159     ; CHECK-LABEL: name: cmp_ule_i32
160     ; CHECK: liveins: $x10, $x11
161     ; CHECK-NEXT: {{  $}}
162     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
163     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
164     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[COPY1]], [[COPY]]
165     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLTU]], 1
166     ; CHECK-NEXT: $x10 = COPY [[XORI]]
167     ; CHECK-NEXT: PseudoRET implicit $x10
168     %0:gprb(s32) = COPY $x10
169     %1:gprb(s32) = COPY $x11
170     %2:gprb(s32) = G_ICMP intpred(ule), %0, %1
171     $x10 = COPY %2(s32)
172     PseudoRET implicit $x10
176 name:            cmp_sle_i32
177 legalized:       true
178 regBankSelected: true
179 tracksRegLiveness: true
180 body:             |
181   bb.0.entry:
182     liveins: $x10, $x11
184     ; CHECK-LABEL: name: cmp_sle_i32
185     ; CHECK: liveins: $x10, $x11
186     ; CHECK-NEXT: {{  $}}
187     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
188     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
189     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[COPY1]], [[COPY]]
190     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLT]], 1
191     ; CHECK-NEXT: $x10 = COPY [[XORI]]
192     ; CHECK-NEXT: PseudoRET implicit $x10
193     %0:gprb(s32) = COPY $x10
194     %1:gprb(s32) = COPY $x11
195     %2:gprb(s32) = G_ICMP intpred(sle), %0, %1
196     $x10 = COPY %2(s32)
197     PseudoRET implicit $x10
201 name:            cmp_uge_i32
202 legalized:       true
203 regBankSelected: true
204 tracksRegLiveness: true
205 body:             |
206   bb.0.entry:
207     liveins: $x10, $x11
209     ; CHECK-LABEL: name: cmp_uge_i32
210     ; CHECK: liveins: $x10, $x11
211     ; CHECK-NEXT: {{  $}}
212     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
213     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
214     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[COPY]], [[COPY1]]
215     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLTU]], 1
216     ; CHECK-NEXT: $x10 = COPY [[XORI]]
217     ; CHECK-NEXT: PseudoRET implicit $x10
218     %0:gprb(s32) = COPY $x10
219     %1:gprb(s32) = COPY $x11
220     %2:gprb(s32) = G_ICMP intpred(uge), %0, %1
221     $x10 = COPY %2(s32)
222     PseudoRET implicit $x10
226 name:            cmp_sge_i32
227 legalized:       true
228 regBankSelected: true
229 tracksRegLiveness: true
230 body:             |
231   bb.0.entry:
232     liveins: $x10, $x11
234     ; CHECK-LABEL: name: cmp_sge_i32
235     ; CHECK: liveins: $x10, $x11
236     ; CHECK-NEXT: {{  $}}
237     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
238     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
239     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[COPY]], [[COPY1]]
240     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLT]], 1
241     ; CHECK-NEXT: $x10 = COPY [[XORI]]
242     ; CHECK-NEXT: PseudoRET implicit $x10
243     %0:gprb(s32) = COPY $x10
244     %1:gprb(s32) = COPY $x11
245     %2:gprb(s32) = G_ICMP intpred(sge), %0, %1
246     $x10 = COPY %2(s32)
247     PseudoRET implicit $x10
251 name:            cmp_ult_p0
252 legalized:       true
253 regBankSelected: true
254 tracksRegLiveness: true
255 body:             |
256   bb.0.entry:
257     liveins: $x10, $x11
259     ; CHECK-LABEL: name: cmp_ult_p0
260     ; CHECK: liveins: $x10, $x11
261     ; CHECK-NEXT: {{  $}}
262     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
263     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
264     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[COPY]], [[COPY1]]
265     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
266     ; CHECK-NEXT: PseudoRET implicit $x10
267     %0:gprb(p0) = COPY $x10
268     %1:gprb(p0) = COPY $x11
269     %2:gprb(s32) = G_ICMP intpred(ult), %0, %1
270     $x10 = COPY %2(s32)
271     PseudoRET implicit $x10
275 name:            cmp_slt_p0
276 legalized:       true
277 regBankSelected: true
278 tracksRegLiveness: true
279 body:             |
280   bb.0.entry:
281     liveins: $x10, $x11
283     ; CHECK-LABEL: name: cmp_slt_p0
284     ; CHECK: liveins: $x10, $x11
285     ; CHECK-NEXT: {{  $}}
286     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
287     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
288     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[COPY]], [[COPY1]]
289     ; CHECK-NEXT: $x10 = COPY [[SLT]]
290     ; CHECK-NEXT: PseudoRET implicit $x10
291     %0:gprb(p0) = COPY $x10
292     %1:gprb(p0) = COPY $x11
293     %2:gprb(s32) = G_ICMP intpred(slt), %0, %1
294     $x10 = COPY %2(s32)
295     PseudoRET implicit $x10
299 name:            cmp_ugt_p0
300 legalized:       true
301 regBankSelected: true
302 tracksRegLiveness: true
303 body:             |
304   bb.0.entry:
305     liveins: $x10, $x11
307     ; CHECK-LABEL: name: cmp_ugt_p0
308     ; CHECK: liveins: $x10, $x11
309     ; CHECK-NEXT: {{  $}}
310     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
311     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
312     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[COPY1]], [[COPY]]
313     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
314     ; CHECK-NEXT: PseudoRET implicit $x10
315     %0:gprb(p0) = COPY $x10
316     %1:gprb(p0) = COPY $x11
317     %2:gprb(s32) = G_ICMP intpred(ugt), %0, %1
318     $x10 = COPY %2(s32)
319     PseudoRET implicit $x10
323 name:            cmp_sgt_p0
324 legalized:       true
325 regBankSelected: true
326 tracksRegLiveness: true
327 body:             |
328   bb.0.entry:
329     liveins: $x10, $x11
331     ; CHECK-LABEL: name: cmp_sgt_p0
332     ; CHECK: liveins: $x10, $x11
333     ; CHECK-NEXT: {{  $}}
334     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
335     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
336     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[COPY1]], [[COPY]]
337     ; CHECK-NEXT: $x10 = COPY [[SLT]]
338     ; CHECK-NEXT: PseudoRET implicit $x10
339     %0:gprb(p0) = COPY $x10
340     %1:gprb(p0) = COPY $x11
341     %2:gprb(s32) = G_ICMP intpred(sgt), %0, %1
342     $x10 = COPY %2(s32)
343     PseudoRET implicit $x10
347 name:            cmp_eq_p0
348 legalized:       true
349 regBankSelected: true
350 tracksRegLiveness: true
351 body:             |
352   bb.0.entry:
353     liveins: $x10, $x11
355     ; CHECK-LABEL: name: cmp_eq_p0
356     ; CHECK: liveins: $x10, $x11
357     ; CHECK-NEXT: {{  $}}
358     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
359     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
360     ; CHECK-NEXT: [[XOR:%[0-9]+]]:gpr = XOR [[COPY]], [[COPY1]]
361     ; CHECK-NEXT: [[SLTIU:%[0-9]+]]:gpr = SLTIU [[XOR]], 1
362     ; CHECK-NEXT: $x10 = COPY [[SLTIU]]
363     ; CHECK-NEXT: PseudoRET implicit $x10
364     %0:gprb(p0) = COPY $x10
365     %1:gprb(p0) = COPY $x11
366     %2:gprb(s32) = G_ICMP intpred(eq), %0, %1
367     $x10 = COPY %2(s32)
368     PseudoRET implicit $x10
372 name:            cmp_ne_p0
373 legalized:       true
374 regBankSelected: true
375 tracksRegLiveness: true
376 body:             |
377   bb.0.entry:
378     liveins: $x10, $x11
380     ; CHECK-LABEL: name: cmp_ne_p0
381     ; CHECK: liveins: $x10, $x11
382     ; CHECK-NEXT: {{  $}}
383     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
384     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
385     ; CHECK-NEXT: [[XOR:%[0-9]+]]:gpr = XOR [[COPY]], [[COPY1]]
386     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU $x0, [[XOR]]
387     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
388     ; CHECK-NEXT: PseudoRET implicit $x10
389     %0:gprb(p0) = COPY $x10
390     %1:gprb(p0) = COPY $x11
391     %2:gprb(s32) = G_ICMP intpred(ne), %0, %1
392     $x10 = COPY %2(s32)
393     PseudoRET implicit $x10
397 name:            cmp_ule_p0
398 legalized:       true
399 regBankSelected: true
400 tracksRegLiveness: true
401 body:             |
402   bb.0.entry:
403     liveins: $x10, $x11
405     ; CHECK-LABEL: name: cmp_ule_p0
406     ; CHECK: liveins: $x10, $x11
407     ; CHECK-NEXT: {{  $}}
408     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
409     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
410     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[COPY1]], [[COPY]]
411     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLTU]], 1
412     ; CHECK-NEXT: $x10 = COPY [[XORI]]
413     ; CHECK-NEXT: PseudoRET implicit $x10
414     %0:gprb(p0) = COPY $x10
415     %1:gprb(p0) = COPY $x11
416     %2:gprb(s32) = G_ICMP intpred(ule), %0, %1
417     $x10 = COPY %2(s32)
418     PseudoRET implicit $x10
422 name:            cmp_sle_p0
423 legalized:       true
424 regBankSelected: true
425 tracksRegLiveness: true
426 body:             |
427   bb.0.entry:
428     liveins: $x10, $x11
430     ; CHECK-LABEL: name: cmp_sle_p0
431     ; CHECK: liveins: $x10, $x11
432     ; CHECK-NEXT: {{  $}}
433     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
434     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
435     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[COPY1]], [[COPY]]
436     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLT]], 1
437     ; CHECK-NEXT: $x10 = COPY [[XORI]]
438     ; CHECK-NEXT: PseudoRET implicit $x10
439     %0:gprb(p0) = COPY $x10
440     %1:gprb(p0) = COPY $x11
441     %2:gprb(s32) = G_ICMP intpred(sle), %0, %1
442     $x10 = COPY %2(s32)
443     PseudoRET implicit $x10
447 name:            cmp_uge_p0
448 legalized:       true
449 regBankSelected: true
450 tracksRegLiveness: true
451 body:             |
452   bb.0.entry:
453     liveins: $x10, $x11
455     ; CHECK-LABEL: name: cmp_uge_p0
456     ; CHECK: liveins: $x10, $x11
457     ; CHECK-NEXT: {{  $}}
458     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
459     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
460     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[COPY]], [[COPY1]]
461     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLTU]], 1
462     ; CHECK-NEXT: $x10 = COPY [[XORI]]
463     ; CHECK-NEXT: PseudoRET implicit $x10
464     %0:gprb(p0) = COPY $x10
465     %1:gprb(p0) = COPY $x11
466     %2:gprb(s32) = G_ICMP intpred(uge), %0, %1
467     $x10 = COPY %2(s32)
468     PseudoRET implicit $x10
472 name:            cmp_sge_p0
473 legalized:       true
474 regBankSelected: true
475 tracksRegLiveness: true
476 body:             |
477   bb.0.entry:
478     liveins: $x10, $x11
480     ; CHECK-LABEL: name: cmp_sge_p0
481     ; CHECK: liveins: $x10, $x11
482     ; CHECK-NEXT: {{  $}}
483     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
484     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11
485     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[COPY]], [[COPY1]]
486     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLT]], 1
487     ; CHECK-NEXT: $x10 = COPY [[XORI]]
488     ; CHECK-NEXT: PseudoRET implicit $x10
489     %0:gprb(p0) = COPY $x10
490     %1:gprb(p0) = COPY $x11
491     %2:gprb(s32) = G_ICMP intpred(sge), %0, %1
492     $x10 = COPY %2(s32)
493     PseudoRET implicit $x10
497 name:            cmp_ulti_i32
498 legalized:       true
499 regBankSelected: true
500 tracksRegLiveness: true
501 body:             |
502   bb.0.entry:
503     liveins: $x10
505     ; CHECK-LABEL: name: cmp_ulti_i32
506     ; CHECK: liveins: $x10
507     ; CHECK-NEXT: {{  $}}
508     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
509     ; CHECK-NEXT: [[SLTIU:%[0-9]+]]:gpr = SLTIU [[COPY]], 10
510     ; CHECK-NEXT: $x10 = COPY [[SLTIU]]
511     ; CHECK-NEXT: PseudoRET implicit $x10
512     %0:gprb(s32) = COPY $x10
513     %1:gprb(s32) = G_CONSTANT i32 10
514     %2:gprb(s32) = G_ICMP intpred(ult), %0, %1
515     $x10 = COPY %2(s32)
516     PseudoRET implicit $x10
520 name:            cmp_slti_i32
521 legalized:       true
522 regBankSelected: true
523 tracksRegLiveness: true
524 body:             |
525   bb.0.entry:
526     liveins: $x10
528     ; CHECK-LABEL: name: cmp_slti_i32
529     ; CHECK: liveins: $x10
530     ; CHECK-NEXT: {{  $}}
531     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
532     ; CHECK-NEXT: [[SLTI:%[0-9]+]]:gpr = SLTI [[COPY]], -10
533     ; CHECK-NEXT: $x10 = COPY [[SLTI]]
534     ; CHECK-NEXT: PseudoRET implicit $x10
535     %0:gprb(s32) = COPY $x10
536     %1:gprb(s32) = G_CONSTANT i32 -10
537     %2:gprb(s32) = G_ICMP intpred(slt), %0, %1
538     $x10 = COPY %2(s32)
539     PseudoRET implicit $x10
543 name:            cmp_ugti_i32
544 legalized:       true
545 regBankSelected: true
546 tracksRegLiveness: true
547 body:             |
548   bb.0.entry:
549     liveins: $x10
551     ; CHECK-LABEL: name: cmp_ugti_i32
552     ; CHECK: liveins: $x10
553     ; CHECK-NEXT: {{  $}}
554     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
555     ; CHECK-NEXT: [[SLTIU:%[0-9]+]]:gpr = SLTIU [[COPY]], 11
556     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLTIU]], 1
557     ; CHECK-NEXT: $x10 = COPY [[XORI]]
558     ; CHECK-NEXT: PseudoRET implicit $x10
559     %0:gprb(s32) = COPY $x10
560     %1:gprb(s32) = G_CONSTANT i32 10
561     %2:gprb(s32) = G_ICMP intpred(ugt), %0, %1
562     $x10 = COPY %2(s32)
563     PseudoRET implicit $x10
567 name:            cmp_sgti_i32
568 legalized:       true
569 regBankSelected: true
570 tracksRegLiveness: true
571 body:             |
572   bb.0.entry:
573     liveins: $x10
575     ; CHECK-LABEL: name: cmp_sgti_i32
576     ; CHECK: liveins: $x10
577     ; CHECK-NEXT: {{  $}}
578     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
579     ; CHECK-NEXT: [[SLTI:%[0-9]+]]:gpr = SLTI [[COPY]], -9
580     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLTI]], 1
581     ; CHECK-NEXT: $x10 = COPY [[XORI]]
582     ; CHECK-NEXT: PseudoRET implicit $x10
583     %0:gprb(s32) = COPY $x10
584     %1:gprb(s32) = G_CONSTANT i32 -10
585     %2:gprb(s32) = G_ICMP intpred(sgt), %0, %1
586     $x10 = COPY %2(s32)
587     PseudoRET implicit $x10
591 name:            cmp_eqi_i32
592 legalized:       true
593 regBankSelected: true
594 tracksRegLiveness: true
595 body:             |
596   bb.0.entry:
597     liveins: $x10
599     ; CHECK-LABEL: name: cmp_eqi_i32
600     ; CHECK: liveins: $x10
601     ; CHECK-NEXT: {{  $}}
602     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
603     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI [[COPY]], -10
604     ; CHECK-NEXT: [[SLTIU:%[0-9]+]]:gpr = SLTIU [[ADDI]], 1
605     ; CHECK-NEXT: $x10 = COPY [[SLTIU]]
606     ; CHECK-NEXT: PseudoRET implicit $x10
607     %0:gprb(s32) = COPY $x10
608     %1:gprb(s32) = G_CONSTANT i32 10
609     %2:gprb(s32) = G_ICMP intpred(eq), %0, %1
610     $x10 = COPY %2(s32)
611     PseudoRET implicit $x10
615 name:            cmp_nei_i32
616 legalized:       true
617 regBankSelected: true
618 tracksRegLiveness: true
619 body:             |
620   bb.0.entry:
621     liveins: $x10
623     ; CHECK-LABEL: name: cmp_nei_i32
624     ; CHECK: liveins: $x10
625     ; CHECK-NEXT: {{  $}}
626     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
627     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI [[COPY]], 10
628     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU $x0, [[ADDI]]
629     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
630     ; CHECK-NEXT: PseudoRET implicit $x10
631     %0:gprb(s32) = COPY $x10
632     %1:gprb(s32) = G_CONSTANT i32 -10
633     %2:gprb(s32) = G_ICMP intpred(ne), %0, %1
634     $x10 = COPY %2(s32)
635     PseudoRET implicit $x10
639 name:            cmp_ulei_i32
640 legalized:       true
641 regBankSelected: true
642 tracksRegLiveness: true
643 body:             |
644   bb.0.entry:
645     liveins: $x10
647     ; CHECK-LABEL: name: cmp_ulei_i32
648     ; CHECK: liveins: $x10
649     ; CHECK-NEXT: {{  $}}
650     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
651     ; CHECK-NEXT: [[SLTIU:%[0-9]+]]:gpr = SLTIU [[COPY]], 11
652     ; CHECK-NEXT: $x10 = COPY [[SLTIU]]
653     ; CHECK-NEXT: PseudoRET implicit $x10
654     %0:gprb(s32) = COPY $x10
655     %1:gprb(s32) = G_CONSTANT i32 10
656     %2:gprb(s32) = G_ICMP intpred(ule), %0, %1
657     $x10 = COPY %2(s32)
658     PseudoRET implicit $x10
662 name:            cmp_slei_i32
663 legalized:       true
664 regBankSelected: true
665 tracksRegLiveness: true
666 body:             |
667   bb.0.entry:
668     liveins: $x10
670     ; CHECK-LABEL: name: cmp_slei_i32
671     ; CHECK: liveins: $x10
672     ; CHECK-NEXT: {{  $}}
673     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
674     ; CHECK-NEXT: [[SLTI:%[0-9]+]]:gpr = SLTI [[COPY]], -9
675     ; CHECK-NEXT: $x10 = COPY [[SLTI]]
676     ; CHECK-NEXT: PseudoRET implicit $x10
677     %0:gprb(s32) = COPY $x10
678     %1:gprb(s32) = G_CONSTANT i32 -10
679     %2:gprb(s32) = G_ICMP intpred(sle), %0, %1
680     $x10 = COPY %2(s32)
681     PseudoRET implicit $x10
685 name:            cmp_ugei_i32
686 legalized:       true
687 regBankSelected: true
688 tracksRegLiveness: true
689 body:             |
690   bb.0.entry:
691     liveins: $x10
693     ; CHECK-LABEL: name: cmp_ugei_i32
694     ; CHECK: liveins: $x10
695     ; CHECK-NEXT: {{  $}}
696     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
697     ; CHECK-NEXT: [[SLTIU:%[0-9]+]]:gpr = SLTIU [[COPY]], 10
698     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLTIU]], 1
699     ; CHECK-NEXT: $x10 = COPY [[XORI]]
700     ; CHECK-NEXT: PseudoRET implicit $x10
701     %0:gprb(s32) = COPY $x10
702     %1:gprb(s32) = G_CONSTANT i32 10
703     %2:gprb(s32) = G_ICMP intpred(uge), %0, %1
704     $x10 = COPY %2(s32)
705     PseudoRET implicit $x10
709 name:            cmp_sgei_i32
710 legalized:       true
711 regBankSelected: true
712 tracksRegLiveness: true
713 body:             |
714   bb.0.entry:
715     liveins: $x10
717     ; CHECK-LABEL: name: cmp_sgei_i32
718     ; CHECK: liveins: $x10
719     ; CHECK-NEXT: {{  $}}
720     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
721     ; CHECK-NEXT: [[SLTI:%[0-9]+]]:gpr = SLTI [[COPY]], -10
722     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLTI]], 1
723     ; CHECK-NEXT: $x10 = COPY [[XORI]]
724     ; CHECK-NEXT: PseudoRET implicit $x10
725     %0:gprb(s32) = COPY $x10
726     %1:gprb(s32) = G_CONSTANT i32 -10
727     %2:gprb(s32) = G_ICMP intpred(sge), %0, %1
728     $x10 = COPY %2(s32)
729     PseudoRET implicit $x10
733 name:            cmp_ulti_p0
734 legalized:       true
735 regBankSelected: true
736 tracksRegLiveness: true
737 body:             |
738   bb.0.entry:
739     liveins: $x10
741     ; CHECK-LABEL: name: cmp_ulti_p0
742     ; CHECK: liveins: $x10
743     ; CHECK-NEXT: {{  $}}
744     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
745     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, 10
746     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[COPY]], [[ADDI]]
747     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
748     ; CHECK-NEXT: PseudoRET implicit $x10
749     %0:gprb(p0) = COPY $x10
750     %1:gprb(p0) = G_CONSTANT i32 10
751     %2:gprb(s32) = G_ICMP intpred(ult), %0, %1
752     $x10 = COPY %2(s32)
753     PseudoRET implicit $x10
757 name:            cmp_slti_p0
758 legalized:       true
759 regBankSelected: true
760 tracksRegLiveness: true
761 body:             |
762   bb.0.entry:
763     liveins: $x10
765     ; CHECK-LABEL: name: cmp_slti_p0
766     ; CHECK: liveins: $x10
767     ; CHECK-NEXT: {{  $}}
768     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
769     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, -10
770     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[COPY]], [[ADDI]]
771     ; CHECK-NEXT: $x10 = COPY [[SLT]]
772     ; CHECK-NEXT: PseudoRET implicit $x10
773     %0:gprb(p0) = COPY $x10
774     %1:gprb(p0) = G_CONSTANT i32 -10
775     %2:gprb(s32) = G_ICMP intpred(slt), %0, %1
776     $x10 = COPY %2(s32)
777     PseudoRET implicit $x10
781 name:            cmp_ugti_p0
782 legalized:       true
783 regBankSelected: true
784 tracksRegLiveness: true
785 body:             |
786   bb.0.entry:
787     liveins: $x10
789     ; CHECK-LABEL: name: cmp_ugti_p0
790     ; CHECK: liveins: $x10
791     ; CHECK-NEXT: {{  $}}
792     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
793     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, 10
794     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[ADDI]], [[COPY]]
795     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
796     ; CHECK-NEXT: PseudoRET implicit $x10
797     %0:gprb(p0) = COPY $x10
798     %1:gprb(p0) = G_CONSTANT i32 10
799     %2:gprb(s32) = G_ICMP intpred(ugt), %0, %1
800     $x10 = COPY %2(s32)
801     PseudoRET implicit $x10
805 name:            cmp_sgti_p0
806 legalized:       true
807 regBankSelected: true
808 tracksRegLiveness: true
809 body:             |
810   bb.0.entry:
811     liveins: $x10
813     ; CHECK-LABEL: name: cmp_sgti_p0
814     ; CHECK: liveins: $x10
815     ; CHECK-NEXT: {{  $}}
816     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
817     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, -10
818     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[ADDI]], [[COPY]]
819     ; CHECK-NEXT: $x10 = COPY [[SLT]]
820     ; CHECK-NEXT: PseudoRET implicit $x10
821     %0:gprb(p0) = COPY $x10
822     %1:gprb(p0) = G_CONSTANT i32 -10
823     %2:gprb(s32) = G_ICMP intpred(sgt), %0, %1
824     $x10 = COPY %2(s32)
825     PseudoRET implicit $x10
829 name:            cmp_eqi_p0
830 legalized:       true
831 regBankSelected: true
832 tracksRegLiveness: true
833 body:             |
834   bb.0.entry:
835     liveins: $x10
837     ; CHECK-LABEL: name: cmp_eqi_p0
838     ; CHECK: liveins: $x10
839     ; CHECK-NEXT: {{  $}}
840     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
841     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, 10
842     ; CHECK-NEXT: [[XOR:%[0-9]+]]:gpr = XOR [[COPY]], [[ADDI]]
843     ; CHECK-NEXT: [[SLTIU:%[0-9]+]]:gpr = SLTIU [[XOR]], 1
844     ; CHECK-NEXT: $x10 = COPY [[SLTIU]]
845     ; CHECK-NEXT: PseudoRET implicit $x10
846     %0:gprb(p0) = COPY $x10
847     %1:gprb(p0) = G_CONSTANT i32 10
848     %2:gprb(s32) = G_ICMP intpred(eq), %0, %1
849     $x10 = COPY %2(s32)
850     PseudoRET implicit $x10
854 name:            cmp_nei_p0
855 legalized:       true
856 regBankSelected: true
857 tracksRegLiveness: true
858 body:             |
859   bb.0.entry:
860     liveins: $x10
862     ; CHECK-LABEL: name: cmp_nei_p0
863     ; CHECK: liveins: $x10
864     ; CHECK-NEXT: {{  $}}
865     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
866     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, -10
867     ; CHECK-NEXT: [[XOR:%[0-9]+]]:gpr = XOR [[COPY]], [[ADDI]]
868     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU $x0, [[XOR]]
869     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
870     ; CHECK-NEXT: PseudoRET implicit $x10
871     %0:gprb(p0) = COPY $x10
872     %1:gprb(p0) = G_CONSTANT i32 -10
873     %2:gprb(s32) = G_ICMP intpred(ne), %0, %1
874     $x10 = COPY %2(s32)
875     PseudoRET implicit $x10
879 name:            cmp_ulei_p0
880 legalized:       true
881 regBankSelected: true
882 tracksRegLiveness: true
883 body:             |
884   bb.0.entry:
885     liveins: $x10
887     ; CHECK-LABEL: name: cmp_ulei_p0
888     ; CHECK: liveins: $x10
889     ; CHECK-NEXT: {{  $}}
890     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
891     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, 10
892     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[ADDI]], [[COPY]]
893     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLTU]], 1
894     ; CHECK-NEXT: $x10 = COPY [[XORI]]
895     ; CHECK-NEXT: PseudoRET implicit $x10
896     %0:gprb(p0) = COPY $x10
897     %1:gprb(p0) = G_CONSTANT i32 10
898     %2:gprb(s32) = G_ICMP intpred(ule), %0, %1
899     $x10 = COPY %2(s32)
900     PseudoRET implicit $x10
904 name:            cmp_slei_p0
905 legalized:       true
906 regBankSelected: true
907 tracksRegLiveness: true
908 body:             |
909   bb.0.entry:
910     liveins: $x10
912     ; CHECK-LABEL: name: cmp_slei_p0
913     ; CHECK: liveins: $x10
914     ; CHECK-NEXT: {{  $}}
915     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
916     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, -10
917     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[ADDI]], [[COPY]]
918     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLT]], 1
919     ; CHECK-NEXT: $x10 = COPY [[XORI]]
920     ; CHECK-NEXT: PseudoRET implicit $x10
921     %0:gprb(p0) = COPY $x10
922     %1:gprb(p0) = G_CONSTANT i32 -10
923     %2:gprb(s32) = G_ICMP intpred(sle), %0, %1
924     $x10 = COPY %2(s32)
925     PseudoRET implicit $x10
929 name:            cmp_ugei_p0
930 legalized:       true
931 regBankSelected: true
932 tracksRegLiveness: true
933 body:             |
934   bb.0.entry:
935     liveins: $x10
937     ; CHECK-LABEL: name: cmp_ugei_p0
938     ; CHECK: liveins: $x10
939     ; CHECK-NEXT: {{  $}}
940     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
941     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, 10
942     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[COPY]], [[ADDI]]
943     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLTU]], 1
944     ; CHECK-NEXT: $x10 = COPY [[XORI]]
945     ; CHECK-NEXT: PseudoRET implicit $x10
946     %0:gprb(p0) = COPY $x10
947     %1:gprb(p0) = G_CONSTANT i32 10
948     %2:gprb(s32) = G_ICMP intpred(uge), %0, %1
949     $x10 = COPY %2(s32)
950     PseudoRET implicit $x10
954 name:            cmp_sgei_p0
955 legalized:       true
956 regBankSelected: true
957 tracksRegLiveness: true
958 body:             |
959   bb.0.entry:
960     liveins: $x10
962     ; CHECK-LABEL: name: cmp_sgei_p0
963     ; CHECK: liveins: $x10
964     ; CHECK-NEXT: {{  $}}
965     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
966     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, -10
967     ; CHECK-NEXT: [[SLT:%[0-9]+]]:gpr = SLT [[COPY]], [[ADDI]]
968     ; CHECK-NEXT: [[XORI:%[0-9]+]]:gpr = XORI [[SLT]], 1
969     ; CHECK-NEXT: $x10 = COPY [[XORI]]
970     ; CHECK-NEXT: PseudoRET implicit $x10
971     %0:gprb(p0) = COPY $x10
972     %1:gprb(p0) = G_CONSTANT i32 -10
973     %2:gprb(s32) = G_ICMP intpred(sge), %0, %1
974     $x10 = COPY %2(s32)
975     PseudoRET implicit $x10
979 name:            cmp_eq0_i32
980 legalized:       true
981 regBankSelected: true
982 tracksRegLiveness: true
983 body:             |
984   bb.0.entry:
985     liveins: $x10
987     ; CHECK-LABEL: name: cmp_eq0_i32
988     ; CHECK: liveins: $x10
989     ; CHECK-NEXT: {{  $}}
990     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
991     ; CHECK-NEXT: [[SLTIU:%[0-9]+]]:gpr = SLTIU [[COPY]], 1
992     ; CHECK-NEXT: $x10 = COPY [[SLTIU]]
993     ; CHECK-NEXT: PseudoRET implicit $x10
994     %0:gprb(s32) = COPY $x10
995     %1:gprb(s32) = G_CONSTANT i32 0
996     %2:gprb(s32) = G_ICMP intpred(eq), %0, %1
997     $x10 = COPY %2(s32)
998     PseudoRET implicit $x10
1002 name:            cmp_eq0_p0
1003 legalized:       true
1004 regBankSelected: true
1005 tracksRegLiveness: true
1006 body:             |
1007   bb.0.entry:
1008     liveins: $x10
1010     ; CHECK-LABEL: name: cmp_eq0_p0
1011     ; CHECK: liveins: $x10
1012     ; CHECK-NEXT: {{  $}}
1013     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
1014     ; CHECK-NEXT: [[SLTIU:%[0-9]+]]:gpr = SLTIU [[COPY]], 1
1015     ; CHECK-NEXT: $x10 = COPY [[SLTIU]]
1016     ; CHECK-NEXT: PseudoRET implicit $x10
1017     %0:gprb(p0) = COPY $x10
1018     %1:gprb(p0) = G_CONSTANT i32 0
1019     %2:gprb(s32) = G_ICMP intpred(eq), %0, %1
1020     $x10 = COPY %2(s32)
1021     PseudoRET implicit $x10
1025 name:            cmp_ne0_i32
1026 legalized:       true
1027 regBankSelected: true
1028 tracksRegLiveness: true
1029 body:             |
1030   bb.0.entry:
1031     liveins: $x10
1033     ; CHECK-LABEL: name: cmp_ne0_i32
1034     ; CHECK: liveins: $x10
1035     ; CHECK-NEXT: {{  $}}
1036     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
1037     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU $x0, [[COPY]]
1038     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
1039     ; CHECK-NEXT: PseudoRET implicit $x10
1040     %0:gprb(s32) = COPY $x10
1041     %1:gprb(s32) = G_CONSTANT i32 0
1042     %2:gprb(s32) = G_ICMP intpred(ne), %0, %1
1043     $x10 = COPY %2(s32)
1044     PseudoRET implicit $x10
1048 name:            cmp_ne0_p0
1049 legalized:       true
1050 regBankSelected: true
1051 tracksRegLiveness: true
1052 body:             |
1053   bb.0.entry:
1054     liveins: $x10
1056     ; CHECK-LABEL: name: cmp_ne0_p0
1057     ; CHECK: liveins: $x10
1058     ; CHECK-NEXT: {{  $}}
1059     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
1060     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU $x0, [[COPY]]
1061     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
1062     ; CHECK-NEXT: PseudoRET implicit $x10
1063     %0:gprb(p0) = COPY $x10
1064     %1:gprb(p0) = G_CONSTANT i32 0
1065     %2:gprb(s32) = G_ICMP intpred(ne), %0, %1
1066     $x10 = COPY %2(s32)
1067     PseudoRET implicit $x10
1071 name:            cmp_ugt_neg1_i32
1072 legalized:       true
1073 regBankSelected: true
1074 tracksRegLiveness: true
1075 body:             |
1076   bb.0.entry:
1077     liveins: $x10
1079     ; CHECK-LABEL: name: cmp_ugt_neg1_i32
1080     ; CHECK: liveins: $x10
1081     ; CHECK-NEXT: {{  $}}
1082     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
1083     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, -1
1084     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[ADDI]], [[COPY]]
1085     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
1086     ; CHECK-NEXT: PseudoRET implicit $x10
1087     %0:gprb(s32) = COPY $x10
1088     %1:gprb(s32) = G_CONSTANT i32 -1
1089     %2:gprb(s32) = G_ICMP intpred(ugt), %0, %1
1090     $x10 = COPY %2(s32)
1091     PseudoRET implicit $x10
1095 name:            cmp_ugt_neg1_p0
1096 legalized:       true
1097 regBankSelected: true
1098 tracksRegLiveness: true
1099 body:             |
1100   bb.0.entry:
1101     liveins: $x10
1103     ; CHECK-LABEL: name: cmp_ugt_neg1_p0
1104     ; CHECK: liveins: $x10
1105     ; CHECK-NEXT: {{  $}}
1106     ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
1107     ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gpr = ADDI $x0, -1
1108     ; CHECK-NEXT: [[SLTU:%[0-9]+]]:gpr = SLTU [[ADDI]], [[COPY]]
1109     ; CHECK-NEXT: $x10 = COPY [[SLTU]]
1110     ; CHECK-NEXT: PseudoRET implicit $x10
1111     %0:gprb(p0) = COPY $x10
1112     %1:gprb(p0) = G_CONSTANT i32 -1
1113     %2:gprb(s32) = G_ICMP intpred(ugt), %0, %1
1114     $x10 = COPY %2(s32)
1115     PseudoRET implicit $x10