[X86] X86DAGToDAGISel - attempt to merge XMM/YMM loads with YMM/ZMM loads of the...
[llvm-project.git] / llvm / test / CodeGen / PowerPC / mi-peepholes-trap-opt.mir
blob3ce22ff5108bfd4323897eace2f6a715f7097698
1 # RUN: llc -mtriple powerpc64le-unknown-linux-gnu -mcpu=pwr8 -x mir < %s \
2 # RUN:   -verify-machineinstrs -start-before=ppc-mi-peepholes \
3 # RUN:   -ppc-opt-conditional-trap | FileCheck %s
5 ---
6 name:            conditional_trap_opt_reg_implicit_def
7 alignment:       16
8 tracksRegLiveness: true
9 body:             |
10   bb.0.entry:
11     %0:gprc = IMPLICIT_DEF
12     %1:gprc = IMPLICIT_DEF
13     %2:g8rc = IMPLICIT_DEF
14     %3:g8rc = IMPLICIT_DEF
15     TW 8, %0, %1
16     TD 8, %2, %3
17     TWI 24, %0, 0
18     TDI 24, %2, 0
19     BLR8 implicit $lr8, implicit $rm
20 ...
21   # CHECK-LABEL: conditional_trap_opt_reg_implicit_def
22   # CHECK: # %bb.0: # %entry
23   # CHECK-NEXT:  twgt    3, 3
24   # CHECK-NEXT:  tdgt    3, 3
25   # CHECK-NEXT:  twnei   3, 0
26   # CHECK-NEXT:  tdnei   3, 0
27   # CHECK-NEXT:  blr
29 ---
30 name:            conditional_trap_opt_int_return
31 alignment:       16
32 tracksRegLiveness: true
33 body:             |
34   bb.0.entry:
35     liveins: $x3
36     %0:g8rc = COPY $x3
37     %1:g8rc = LI8 3
38     %2:g8rc = LI8 0
39     TD 24, %2, %1
40     $x3 = COPY %0
41     BLR8 implicit $lr8, implicit $rm, implicit $x3
42 ...
43   # CHECK-LABEL: conditional_trap_opt_int_return
44   # CHECK: # %bb.0: # %entry
45   # CHECK-NEXT:  trap
46   # CHECK-NOT:   blr
48 ---
49 name:            conditional_trap_opt_TW_31
50 alignment:       16
51 tracksRegLiveness: true
52 body:             |
53   bb.0.entry:
54     %0:gprc = LI 3
55     %1:gprc = LI 0
56     TW 31, %1, %0
57     BLR8 implicit $lr8, implicit $rm
58 ...
59   # CHECK-LABEL: conditional_trap_opt_TW_31
60   # CHECK: # %bb.0: # %entry
61   # CHECK-NEXT:  trap
62   # CHECK-NOT:   blr
64 ---
65 name:            conditional_trap_opt_TW_24
66 alignment:       16
67 tracksRegLiveness: true
68 body:             |
69   bb.0.entry:
70     %0:gprc = LI 3
71     %1:gprc = LI 0
72     TW 24, %1, %0
73     BLR8 implicit $lr8, implicit $rm
74 ...
75   # CHECK-LABEL: conditional_trap_opt_TW_24
76   # CHECK: # %bb.0: # %entry
77   # CHECK-NEXT:  trap
78   # CHECK-NOT:   blr
80 ---
81 name:            conditional_trap_opt_no_trap_TW_24
82 alignment:       16
83 tracksRegLiveness: true
84 body:             |
85   bb.0.entry:
86     %0:gprc = LI 3
87     %1:gprc = LI 3
88     TW 24, %1, %0
89     BLR8 implicit $lr8, implicit $rm
90 ...
91   # CHECK-LABEL: conditional_trap_opt_no_trap_TW_24
92   # CHECK: # %bb.0: # %entry
93   # CHECK-NEXT:  blr
95 ---
96 name:            conditional_trap_opt_TW_20
97 alignment:       16
98 tracksRegLiveness: true
99 body:             |
100   bb.0.entry:
101     %0:gprc = LI 3
102     %1:gprc = LI 3
103     TW 20, %1, %0
104     BLR8 implicit $lr8, implicit $rm
106   # CHECK-LABEL: conditional_trap_opt_TW_20
107   # CHECK: # %bb.0: # %entry
108   # CHECK-NEXT:  trap
109   # CHECK-NOT:   blr
112 name:            conditional_trap_opt_no_trap_TW_20
113 alignment:       16
114 tracksRegLiveness: true
115 body:             |
116   bb.0.entry:
117     %0:gprc = LI 3
118     %1:gprc = LI 5
119     TW 20, %1, %0
120     BLR8 implicit $lr8, implicit $rm
122   # CHECK-LABEL: conditional_trap_opt_no_trap_TW_20
123   # CHECK: # %bb.0: # %entry
124   # CHECK-NEXT:  blr
127 name:            conditional_trap_opt_no_trap_TW_16
128 alignment:       16
129 tracksRegLiveness: true
130 body:             |
131   bb.0.entry:
132     %0:gprc = LI 5
133     %1:gprc = LI 1
134     TW 16, %0, %1
135     BLR8 implicit $lr8, implicit $rm
137   # CHECK-LABEL: conditional_trap_opt_no_trap_TW_16
138   # CHECK: # %bb.0: # %entry
139   # CHECK-NEXT:  blr
142 name:            conditional_trap_opt_TW_16
143 alignment:       16
144 tracksRegLiveness: true
145 body:             |
146   bb.0.entry:
147     %0:gprc = LI 5
148     %1:gprc = LI 1
149     TW 16, %1, %0
150     TW 16, %0, %1
151     BLR8 implicit $lr8, implicit $rm
153   # CHECK-LABEL: conditional_trap_opt_TW_16
154   # CHECK: # %bb.0: # %entry
155   # CHECK-NEXT:  trap
156   # CHECK-NOT:   blr
159 name:            conditional_trap_opt_TW_8
160 alignment:       16
161 tracksRegLiveness: true
162 body:             |
163   bb.0.entry:
164     %0:gprc = LI -1
165     %1:gprc = LI 10
166     TW 8, %1, %0
167     TW 8, %0, %1
168     BLR8 implicit $lr8, implicit $rm
170   # CHECK-LABEL: conditional_trap_opt_TW_8
171   # CHECK: # %bb.0: # %entry
172   # CHECK-NEXT:  trap
173   # CHECK-NOT:   blr
176 name:            conditional_trap_opt_TW_2
177 alignment:       16
178 tracksRegLiveness: true
179 body:             |
180   bb.0.entry:
181     %0:gprc = LI -1
182     %1:gprc = LI 2
183     TW 2, %1, %0
184     TW 2, %0, %1
185     BLR8 implicit $lr8, implicit $rm
187   # CHECK-LABEL: conditional_trap_opt_TW_2
188   # CHECK: # %bb.0: # %entry
189   # CHECK-NEXT:  trap
190   # CHECK-NOT:   blr
193 name:            conditional_trap_opt_TW_1
194 alignment:       16
195 tracksRegLiveness: true
196 body:             |
197   bb.0.entry:
198     %0:gprc = LI -3
199     %1:gprc = LI 4
200     TW 1, %1, %0
201     TW 1, %0, %1
202     BLR8 implicit $lr8, implicit $rm
204   # CHECK-LABEL: conditional_trap_opt_TW_1
205   # CHECK: # %bb.0: # %entry
206   # CHECK-NEXT:  trap
207   # CHECK-NOT:   blr
210 name:            conditional_trap_opt_TW_4
211 alignment:       16
212 tracksRegLiveness: true
213 body:             |
214   bb.0.entry:
215     %0:gprc = LI 5
216     %1:gprc = LI 1
217     TW 4, %1, %0
218     TW 4, %1, %1
219     BLR8 implicit $lr8, implicit $rm
221   # CHECK-LABEL: conditional_trap_opt_TW_4
222   # CHECK: # %bb.0: # %entry
223   # CHECK-NEXT:  trap
224   # CHECK-NOT:   blr
227 name:            conditional_trap_opt_TWI_31
228 alignment:       16
229 tracksRegLiveness: true
230 body:             |
231   bb.0.entry:
232     %0:gprc = LI 3
233     TWI 31, %0, 0
234     BLR8 implicit $lr8, implicit $rm
236   # CHECK-LABEL: conditional_trap_opt_TWI_31
237   # CHECK: # %bb.0: # %entry
238   # CHECK-NEXT:  trap
239   # CHECK-NOT:   blr
242 name:            conditional_trap_opt_TWI_24
243 alignment:       16
244 tracksRegLiveness: true
245 body:             |
246   bb.0.entry:
247     %0:gprc = LI 3
248     TWI 24, %0, 0
249     BLR8 implicit $lr8, implicit $rm
251   # CHECK-LABEL: conditional_trap_opt_TWI_24
252   # CHECK: # %bb.0: # %entry
253   # CHECK-NEXT:  trap
254   # CHECK-NOT:   blr
257 name:            conditional_trap_opt_no_trap_TWI_24
258 alignment:       16
259 tracksRegLiveness: true
260 body:             |
261   bb.0.entry:
262     %0:gprc = LI 0
263     TWI 24, %0, 0
264     BLR8 implicit $lr8, implicit $rm
266   # CHECK-LABEL: conditional_trap_opt_no_trap_TWI_24
267   # CHECK: # %bb.0: # %entry
268   # CHECK-NEXT:  blr
271 name:            conditional_trap_opt_TWI_20
272 alignment:       16
273 tracksRegLiveness: true
274 body:             |
275   bb.0.entry:
276     %0:gprc = LI 3
277     TWI 20, %0, 3
278     BLR8 implicit $lr8, implicit $rm
280   # CHECK-LABEL: conditional_trap_opt_TWI_20
281   # CHECK: # %bb.0: # %entry
282   # CHECK-NEXT:  trap
283   # CHECK-NOT:   blr
286 name:            conditional_trap_opt_no_trap_TWI_20
287 alignment:       16
288 tracksRegLiveness: true
289 body:             |
290   bb.0.entry:
291     %0:gprc = LI 3
292     TWI 20, %0, 0
293     BLR8 implicit $lr8, implicit $rm
295   # CHECK-LABEL: conditional_trap_opt_no_trap_TWI_20
296   # CHECK: # %bb.0: # %entry
297   # CHECK-NEXT:  blr
300 name:            conditional_trap_opt_no_trap_TWI_16
301 alignment:       16
302 tracksRegLiveness: true
303 body:             |
304   bb.0.entry:
305     %0:gprc = LI 5
306     TWI 16, %0, 1
307     BLR8 implicit $lr8, implicit $rm
309   # CHECK-LABEL: conditional_trap_opt_no_trap_TWI_16
310   # CHECK: # %bb.0: # %entry
311   # CHECK-NEXT:  blr
314 name:            conditional_trap_opt_TWI_16
315 alignment:       16
316 tracksRegLiveness: true
317 body:             |
318   bb.0.entry:
319     %0:gprc = LI 5
320     %1:gprc = LI 1
321     TWI 16, %1, 5
322     TWI 16, %0, 1
323     BLR8 implicit $lr8, implicit $rm
325   # CHECK-LABEL: conditional_trap_opt_TWI_16
326   # CHECK: # %bb.0: # %entry
327   # CHECK-NEXT:  trap
328   # CHECK-NOT:   blr
331 name:            conditional_trap_opt_TWI_8
332 alignment:       16
333 tracksRegLiveness: true
334 body:             |
335   bb.0.entry:
336     %0:gprc = LI -1
337     %1:gprc = LI 10
338     TWI 8, %1, -1
339     TWI 8, %0, 10
340     BLR8 implicit $lr8, implicit $rm
342   # CHECK-LABEL: conditional_trap_opt_TWI_8
343   # CHECK: # %bb.0: # %entry
344   # CHECK-NEXT:  trap
345   # CHECK-NOT:   blr
348 name:            conditional_trap_opt_TWI_2
349 alignment:       16
350 tracksRegLiveness: true
351 body:             |
352   bb.0.entry:
353     %0:gprc = LI -1
354     %1:gprc = LI 2
355     TWI 2, %1, -1
356     TWI 2, %0, 2
357     BLR8 implicit $lr8, implicit $rm
359   # CHECK-LABEL: conditional_trap_opt_TWI_2
360   # CHECK: # %bb.0: # %entry
361   # CHECK-NEXT:  trap
362   # CHECK-NOT:   blr
365 name:            conditional_trap_opt_TWI_1
366 alignment:       16
367 tracksRegLiveness: true
368 body:             |
369   bb.0.entry:
370     %0:gprc = LI -3
371     %1:gprc = LI 4
372     TWI 1, %1, -3
373     TWI 1, %0, 4
374     BLR8 implicit $lr8, implicit $rm
376   # CHECK-LABEL: conditional_trap_opt_TWI_1
377   # CHECK: # %bb.0: # %entry
378   # CHECK-NEXT:  trap
379   # CHECK-NOT:   blr
382 name:            conditional_trap_opt_TWI_4
383 alignment:       16
384 tracksRegLiveness: true
385 body:             |
386   bb.0.entry:
387     %0:gprc = LI 5
388     %1:gprc = LI 1
389     TWI 4, %1, 5
390     TWI 4, %1, 1
391     BLR8 implicit $lr8, implicit $rm
393   # CHECK-LABEL: conditional_trap_opt_TWI_4
394   # CHECK: # %bb.0: # %entry
395   # CHECK-NEXT:  trap
396   # CHECK-NOT:   blr
399 name:            conditional_trap_opt_TD_31
400 alignment:       16
401 tracksRegLiveness: true
402 body:             |
403   bb.0.entry:
404     %0:g8rc = LI8 3
405     %1:g8rc = LI8 0
406     TD 31, %1, %0
407     BLR8 implicit $lr8, implicit $rm
409   # CHECK-LABEL: conditional_trap_opt_TD_31
410   # CHECK: # %bb.0: # %entry
411   # CHECK-NEXT:  trap
412   # CHECK-NOT:   blr
415 name:            conditional_trap_opt_TD_24
416 alignment:       16
417 tracksRegLiveness: true
418 body:             |
419   bb.0.entry:
420     %0:g8rc = LI8 3
421     %1:g8rc = LI8 0
422     TD 24, %1, %0
423     BLR8 implicit $lr8, implicit $rm
425   # CHECK-LABEL: conditional_trap_opt_TD_24
426   # CHECK: # %bb.0: # %entry
427   # CHECK-NEXT:  trap
428   # CHECK-NOT:   blr
431 name:            conditional_trap_opt_no_trap_TD_24
432 alignment:       16
433 tracksRegLiveness: true
434 body:             |
435   bb.0.entry:
436     %0:g8rc = LI8 3
437     %1:g8rc = LI8 3
438     TD 24, %1, %0
439     BLR8 implicit $lr8, implicit $rm
441   # CHECK-LABEL: conditional_trap_opt_no_trap_TD_24
442   # CHECK: # %bb.0: # %entry
443   # CHECK-NEXT:  blr
446 name:            conditional_trap_opt_TD_20
447 alignment:       16
448 tracksRegLiveness: true
449 body:             |
450   bb.0.entry:
451     %0:g8rc = LI8 3
452     %1:g8rc = LI8 3
453     TD 20, %1, %0
454     BLR8 implicit $lr8, implicit $rm
456   # CHECK-LABEL: conditional_trap_opt_TD_20
457   # CHECK: # %bb.0: # %entry
458   # CHECK-NEXT:  trap
459   # CHECK-NOT:   blr
462 name:            conditional_trap_opt_no_trap_TD_20
463 alignment:       16
464 tracksRegLiveness: true
465 body:             |
466   bb.0.entry:
467     %0:g8rc = LI8 3
468     %1:g8rc = LI8 5
469     TD 20, %1, %0
470     BLR8 implicit $lr8, implicit $rm
472   # CHECK-LABEL: conditional_trap_opt_no_trap_TD_20
473   # CHECK: # %bb.0: # %entry
474   # CHECK-NEXT:  blr
477 name:            conditional_trap_opt_no_trap_TD_16
478 alignment:       16
479 tracksRegLiveness: true
480 body:             |
481   bb.0.entry:
482     %0:g8rc = LI8 5
483     %1:g8rc = LI8 1
484     TD 16, %0, %1
485     BLR8 implicit $lr8, implicit $rm
487   # CHECK-LABEL: conditional_trap_opt_no_trap_TD_16
488   # CHECK: # %bb.0: # %entry
489   # CHECK-NEXT:  blr
492 name:            conditional_trap_opt_TD_16
493 alignment:       16
494 tracksRegLiveness: true
495 body:             |
496   bb.0.entry:
497     %0:g8rc = LI8 5
498     %1:g8rc = LI8 1
499     TD 16, %1, %0
500     TD 16, %0, %1
501     BLR8 implicit $lr8, implicit $rm
503   # CHECK-LABEL: conditional_trap_opt_TD_16
504   # CHECK: # %bb.0: # %entry
505   # CHECK-NEXT:  trap
506   # CHECK-NOT:   blr
509 name:            conditional_trap_opt_TD_8
510 alignment:       16
511 tracksRegLiveness: true
512 body:             |
513   bb.0.entry:
514     %0:g8rc = LI8 -1
515     %1:g8rc = LI8 10
516     TD 8, %1, %0
517     TD 8, %0, %1
518     BLR8 implicit $lr8, implicit $rm
520   # CHECK-LABEL: conditional_trap_opt_TD_8
521   # CHECK: # %bb.0: # %entry
522   # CHECK-NEXT:  trap
523   # CHECK-NOT:   blr
526 name:            conditional_trap_opt_TD_2
527 alignment:       16
528 tracksRegLiveness: true
529 body:             |
530   bb.0.entry:
531     %0:g8rc = LI8 -1
532     %1:g8rc = LI8 2
533     TD 2, %1, %0
534     TD 2, %0, %1
535     BLR8 implicit $lr8, implicit $rm
537   # CHECK-LABEL: conditional_trap_opt_TD_2
538   # CHECK: # %bb.0: # %entry
539   # CHECK-NEXT:  trap
540   # CHECK-NOT:   blr
543 name:            conditional_trap_opt_TD_1
544 alignment:       16
545 tracksRegLiveness: true
546 body:             |
547   bb.0.entry:
548     %0:g8rc = LI8 -3
549     %1:g8rc = LI8 4
550     TD 1, %1, %0
551     TD 1, %0, %1
552     BLR8 implicit $lr8, implicit $rm
554   # CHECK-LABEL: conditional_trap_opt_TD_1
555   # CHECK: # %bb.0: # %entry
556   # CHECK-NEXT:  trap
557   # CHECK-NOT:   blr
560 name:            conditional_trap_opt_TD_4
561 alignment:       16
562 tracksRegLiveness: true
563 body:             |
564   bb.0.entry:
565     %0:g8rc = LI8 5
566     %1:g8rc = LI8 1
567     TD 4, %1, %0
568     TD 4, %1, %1
569     BLR8 implicit $lr8, implicit $rm
571   # CHECK-LABEL: conditional_trap_opt_TD_4
572   # CHECK: # %bb.0: # %entry
573   # CHECK-NEXT:  trap
574   # CHECK-NOT:   blr
577 name:            conditional_trap_opt_TDI_31
578 alignment:       16
579 tracksRegLiveness: true
580 body:             |
581   bb.0.entry:
582     %0:g8rc = LI8 3
583     TDI 31, %0, 0
584     BLR8 implicit $lr8, implicit $rm
586   # CHECK-LABEL: conditional_trap_opt_TDI_31
587   # CHECK: # %bb.0: # %entry
588   # CHECK-NEXT:  trap
589   # CHECK-NOT:   blr
592 name:            conditional_trap_opt_TDI_24
593 alignment:       16
594 tracksRegLiveness: true
595 body:             |
596   bb.0.entry:
597     %0:g8rc = LI8 3
598     TDI 24, %0, 0
599     BLR8 implicit $lr8, implicit $rm
601   # CHECK-LABEL: conditional_trap_opt_TDI_24
602   # CHECK: # %bb.0: # %entry
603   # CHECK-NEXT:  trap
604   # CHECK-NOT:   blr
607 name:            conditional_trap_opt_no_trap_TDI_24
608 alignment:       16
609 tracksRegLiveness: true
610 body:             |
611   bb.0.entry:
612     %0:g8rc = LI8 0
613     TDI 24, %0, 0
614     BLR8 implicit $lr8, implicit $rm
616   # CHECK-LABEL: conditional_trap_opt_no_trap_TDI_24
617   # CHECK: # %bb.0: # %entry
618   # CHECK-NEXT:  blr
621 name:            conditional_trap_opt_TDI_20
622 alignment:       16
623 tracksRegLiveness: true
624 body:             |
625   bb.0.entry:
626     %0:g8rc = LI8 3
627     TDI 20, %0, 3
628     BLR8 implicit $lr8, implicit $rm
630   # CHECK-LABEL: conditional_trap_opt_TDI_20
631   # CHECK: # %bb.0: # %entry
632   # CHECK-NEXT:  trap
633   # CHECK-NOT:   blr
636 name:            conditional_trap_opt_no_trap_TDI_20
637 alignment:       16
638 tracksRegLiveness: true
639 body:             |
640   bb.0.entry:
641     %0:g8rc = LI8 5
642     TDI 20, %0, 3
643     BLR8 implicit $lr8, implicit $rm
645   # CHECK-LABEL: conditional_trap_opt_no_trap_TDI_20
646   # CHECK: # %bb.0: # %entry
647   # CHECK-NEXT:  blr
650 name:            conditional_trap_opt_no_trap_TDI_16
651 alignment:       16
652 tracksRegLiveness: true
653 body:             |
654   bb.0.entry:
655     %0:g8rc = LI8 5
656     TDI 16, %0, 1
657     BLR8 implicit $lr8, implicit $rm
659   # CHECK-LABEL: conditional_trap_opt_no_trap_TDI_16
660   # CHECK: # %bb.0: # %entry
661   # CHECK-NEXT:  blr
664 name:            conditional_trap_opt_TDI_16
665 alignment:       16
666 tracksRegLiveness: true
667 body:             |
668   bb.0.entry:
669     %0:g8rc = LI8 5
670     %1:g8rc = LI8 1
671     TDI 16, %1, 5
672     TDI 16, %0, 1
673     BLR8 implicit $lr8, implicit $rm
675   # CHECK-LABEL: conditional_trap_opt_TDI_16
676   # CHECK: # %bb.0: # %entry
677   # CHECK-NEXT:  trap
678   # CHECK-NOT:   blr
681 name:            conditional_trap_opt_TDI_8
682 alignment:       16
683 tracksRegLiveness: true
684 body:             |
685   bb.0.entry:
686     %0:g8rc = LI8 -1
687     %1:g8rc = LI8 10
688     TDI 8, %1, -1
689     TDI 8, %0, 10
690     BLR8 implicit $lr8, implicit $rm
692   # CHECK-LABEL: conditional_trap_opt_TDI_8
693   # CHECK: # %bb.0: # %entry
694   # CHECK-NEXT:  trap
695   # CHECK-NOT:   blr
698 name:            conditional_trap_opt_TDI_2
699 alignment:       16
700 tracksRegLiveness: true
701 body:             |
702   bb.0.entry:
703     %0:g8rc = LI8 -1
704     %1:g8rc = LI8 2
705     TDI 2, %1, -1
706     TDI 2, %0, 2
707     BLR8 implicit $lr8, implicit $rm
709   # CHECK-LABEL: conditional_trap_opt_TDI_2
710   # CHECK: # %bb.0: # %entry
711   # CHECK-NEXT:  trap
712   # CHECK-NOT:   blr
715 name:            conditional_trap_opt_TDI_1
716 alignment:       16
717 tracksRegLiveness: true
718 body:             |
719   bb.0.entry:
720     %0:g8rc = LI8 -3
721     %1:g8rc = LI8 4
722     TDI 1, %1, -3
723     TDI 1, %0, 4
724     BLR8 implicit $lr8, implicit $rm
726   # CHECK-LABEL: conditional_trap_opt_TDI_1
727   # CHECK: # %bb.0: # %entry
728   # CHECK-NEXT:  trap
729   # CHECK-NOT:   blr
732 name:            conditional_trap_opt_TDI_4
733 alignment:       16
734 tracksRegLiveness: true
735 body:             |
736   bb.0.entry:
737     %0:g8rc = LI8 5
738     %1:g8rc = LI8 1
739     TDI 4, %1, 5
740     TDI 4, %1, 1
741     BLR8 implicit $lr8, implicit $rm
743   # CHECK-LABEL: conditional_trap_opt_TDI_4
744   # CHECK: # %bb.0: # %entry
745   # CHECK-NEXT:  trap
746   # CHECK-NOT:   blr
749 name:            conditional_trap_opt_multiple_traps
750 alignment:       16
751 tracksRegLiveness: true
752 body:             |
753   bb.0.entry:
754     %0:gprc = LI 5
755     %1:gprc = LI 1
756     %2:g8rc = LI8 -1
757     %3:g8rc = LI8 0
758     TWI 31, %1, 5
759     TDI 31, %3, 0
760     TW 31, %0, %1
761     TD 31, %2, %2
762     BLR8 implicit $lr8, implicit $rm
764   # CHECK-LABEL: conditional_trap_opt_multiple_traps
765   # CHECK: # %bb.0: # %entry
766   # CHECK-NEXT:  trap
767   # CHECK-NOT:   blr