[VPlan] Perform DT expensive input DT verification earlier (NFC).
[llvm-project.git] / llvm / test / CodeGen / Mips / GlobalISel / regbankselect / rem_and_div.mir
blobb9b725e8e138ca3f16bf1a3d82c92be54e96c0ae
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -O0 -mtriple=mipsel-linux-gnu -run-pass=regbankselect -verify-machineinstrs %s -o - | FileCheck %s -check-prefixes=MIPS32
3 --- |
5   define void @sdiv_i32() {entry: ret void}
6   define void @srem_i32() {entry: ret void}
7   define void @udiv_i32() {entry: ret void}
8   define void @urem_i32() {entry: ret void}
10 ...
11 ---
12 name:            sdiv_i32
13 alignment:       4
14 legalized:       true
15 tracksRegLiveness: true
16 body:             |
17   bb.1.entry:
18     liveins: $a0, $a1
20     ; MIPS32-LABEL: name: sdiv_i32
21     ; MIPS32: liveins: $a0, $a1
22     ; MIPS32: [[COPY:%[0-9]+]]:gprb(s32) = COPY $a0
23     ; MIPS32: [[COPY1:%[0-9]+]]:gprb(s32) = COPY $a1
24     ; MIPS32: [[SDIV:%[0-9]+]]:gprb(s32) = G_SDIV [[COPY1]], [[COPY]]
25     ; MIPS32: $v0 = COPY [[SDIV]](s32)
26     ; MIPS32: RetRA implicit $v0
27     %0:_(s32) = COPY $a0
28     %1:_(s32) = COPY $a1
29     %2:_(s32) = G_SDIV %1, %0
30     $v0 = COPY %2(s32)
31     RetRA implicit $v0
33 ...
34 ---
35 name:            srem_i32
36 alignment:       4
37 legalized:       true
38 tracksRegLiveness: true
39 body:             |
40   bb.1.entry:
41     liveins: $a0, $a1
43     ; MIPS32-LABEL: name: srem_i32
44     ; MIPS32: liveins: $a0, $a1
45     ; MIPS32: [[COPY:%[0-9]+]]:gprb(s32) = COPY $a0
46     ; MIPS32: [[COPY1:%[0-9]+]]:gprb(s32) = COPY $a1
47     ; MIPS32: [[SREM:%[0-9]+]]:gprb(s32) = G_SREM [[COPY1]], [[COPY]]
48     ; MIPS32: $v0 = COPY [[SREM]](s32)
49     ; MIPS32: RetRA implicit $v0
50     %0:_(s32) = COPY $a0
51     %1:_(s32) = COPY $a1
52     %2:_(s32) = G_SREM %1, %0
53     $v0 = COPY %2(s32)
54     RetRA implicit $v0
56 ...
57 ---
58 name:            udiv_i32
59 alignment:       4
60 legalized:       true
61 tracksRegLiveness: true
62 body:             |
63   bb.1.entry:
64     liveins: $a0, $a1
66     ; MIPS32-LABEL: name: udiv_i32
67     ; MIPS32: liveins: $a0, $a1
68     ; MIPS32: [[COPY:%[0-9]+]]:gprb(s32) = COPY $a0
69     ; MIPS32: [[COPY1:%[0-9]+]]:gprb(s32) = COPY $a1
70     ; MIPS32: [[UDIV:%[0-9]+]]:gprb(s32) = G_UDIV [[COPY1]], [[COPY]]
71     ; MIPS32: $v0 = COPY [[UDIV]](s32)
72     ; MIPS32: RetRA implicit $v0
73     %0:_(s32) = COPY $a0
74     %1:_(s32) = COPY $a1
75     %2:_(s32) = G_UDIV %1, %0
76     $v0 = COPY %2(s32)
77     RetRA implicit $v0
79 ...
80 ---
81 name:            urem_i32
82 alignment:       4
83 legalized:       true
84 tracksRegLiveness: true
85 body:             |
86   bb.1.entry:
87     liveins: $a0, $a1
89     ; MIPS32-LABEL: name: urem_i32
90     ; MIPS32: liveins: $a0, $a1
91     ; MIPS32: [[COPY:%[0-9]+]]:gprb(s32) = COPY $a0
92     ; MIPS32: [[COPY1:%[0-9]+]]:gprb(s32) = COPY $a1
93     ; MIPS32: [[UREM:%[0-9]+]]:gprb(s32) = G_UREM [[COPY1]], [[COPY]]
94     ; MIPS32: $v0 = COPY [[UREM]](s32)
95     ; MIPS32: RetRA implicit $v0
96     %0:_(s32) = COPY $a0
97     %1:_(s32) = COPY $a1
98     %2:_(s32) = G_UREM %1, %0
99     $v0 = COPY %2(s32)
100     RetRA implicit $v0