brintos

brintos / llvm-project-archived public Read only

0
0
Text · 16.2 KiB · c3ccc82 Raw
461 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -O0 -mtriple=mipsel-linux-gnu -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s -check-prefixes=MIPS323--- |4 5  define void @ne_i32() {entry: ret void}6  define void @eq_ptr() {entry: ret void}7  define void @ult_i8() {entry: ret void}8  define void @slt_i16() {entry: ret void}9  define void @eq_i64() {entry: ret void}10  define void @ne_i64() {entry: ret void}11  define void @sgt_i64() {entry: ret void}12  define void @sge_i64() {entry: ret void}13  define void @slt_i64() {entry: ret void}14  define void @sle_i64() {entry: ret void}15  define void @ugt_i64() {entry: ret void}16  define void @uge_i64() {entry: ret void}17  define void @ult_i64() {entry: ret void}18  define void @ule_i64() {entry: ret void}19 20...21---22name:            ne_i3223alignment:       424tracksRegLiveness: true25body:             |26  bb.1.entry:27    liveins: $a0, $a128 29    ; MIPS32-LABEL: name: ne_i3230    ; MIPS32: liveins: $a0, $a131    ; MIPS32-NEXT: {{  $}}32    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a033    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a134    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(ne), [[COPY]](s32), [[COPY1]]35    ; MIPS32-NEXT: $v0 = COPY [[ICMP]](s32)36    ; MIPS32-NEXT: RetRA implicit $v037    %0:_(s32) = COPY $a038    %1:_(s32) = COPY $a139    %2:_(s1) = G_ICMP intpred(ne), %0(s32), %140    %3:_(s32) = G_ANYEXT %2(s1)41    $v0 = COPY %3(s32)42    RetRA implicit $v043 44...45---46name:            eq_ptr47alignment:       448tracksRegLiveness: true49body:             |50  bb.1.entry:51    liveins: $a0, $a152 53    ; MIPS32-LABEL: name: eq_ptr54    ; MIPS32: liveins: $a0, $a155    ; MIPS32-NEXT: {{  $}}56    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $a057    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $a158    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(eq), [[COPY]](p0), [[COPY1]]59    ; MIPS32-NEXT: $v0 = COPY [[ICMP]](s32)60    ; MIPS32-NEXT: RetRA implicit $v061    %0:_(p0) = COPY $a062    %1:_(p0) = COPY $a163    %2:_(s1) = G_ICMP intpred(eq), %0(p0), %164    %3:_(s32) = G_ANYEXT %2(s1)65    $v0 = COPY %3(s32)66    RetRA implicit $v067 68...69---70name:            ult_i871alignment:       472tracksRegLiveness: true73body:             |74  bb.1.entry:75    liveins: $a0, $a176 77    ; MIPS32-LABEL: name: ult_i878    ; MIPS32: liveins: $a0, $a179    ; MIPS32-NEXT: {{  $}}80    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a081    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a182    ; MIPS32-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 25583    ; MIPS32-NEXT: [[AND:%[0-9]+]]:_(s32) = G_AND [[COPY]], [[C]]84    ; MIPS32-NEXT: [[AND1:%[0-9]+]]:_(s32) = G_AND [[COPY1]], [[C]]85    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(ult), [[AND]](s32), [[AND1]]86    ; MIPS32-NEXT: $v0 = COPY [[ICMP]](s32)87    ; MIPS32-NEXT: RetRA implicit $v088    %2:_(s32) = COPY $a089    %0:_(s8) = G_TRUNC %2(s32)90    %3:_(s32) = COPY $a191    %1:_(s8) = G_TRUNC %3(s32)92    %4:_(s1) = G_ICMP intpred(ult), %0(s8), %193    %5:_(s32) = G_ANYEXT %4(s1)94    $v0 = COPY %5(s32)95    RetRA implicit $v096 97...98---99name:            slt_i16100alignment:       4101tracksRegLiveness: true102body:             |103  bb.1.entry:104    liveins: $a0, $a1105 106    ; MIPS32-LABEL: name: slt_i16107    ; MIPS32: liveins: $a0, $a1108    ; MIPS32-NEXT: {{  $}}109    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0110    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1111    ; MIPS32-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 16112    ; MIPS32-NEXT: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[COPY]], [[C]](s32)113    ; MIPS32-NEXT: [[ASHR:%[0-9]+]]:_(s32) = G_ASHR [[SHL]], [[C]](s32)114    ; MIPS32-NEXT: [[SHL1:%[0-9]+]]:_(s32) = G_SHL [[COPY1]], [[C]](s32)115    ; MIPS32-NEXT: [[ASHR1:%[0-9]+]]:_(s32) = G_ASHR [[SHL1]], [[C]](s32)116    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(slt), [[ASHR]](s32), [[ASHR1]]117    ; MIPS32-NEXT: $v0 = COPY [[ICMP]](s32)118    ; MIPS32-NEXT: RetRA implicit $v0119    %2:_(s32) = COPY $a0120    %0:_(s16) = G_TRUNC %2(s32)121    %3:_(s32) = COPY $a1122    %1:_(s16) = G_TRUNC %3(s32)123    %4:_(s1) = G_ICMP intpred(slt), %0(s16), %1124    %5:_(s32) = G_ANYEXT %4(s1)125    $v0 = COPY %5(s32)126    RetRA implicit $v0127 128...129---130name:            eq_i64131alignment:       4132tracksRegLiveness: true133body:             |134  bb.1.entry:135    liveins: $a0, $a1, $a2, $a3136 137    ; MIPS32-LABEL: name: eq_i64138    ; MIPS32: liveins: $a0, $a1, $a2, $a3139    ; MIPS32-NEXT: {{  $}}140    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0141    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1142    ; MIPS32-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $a2143    ; MIPS32-NEXT: [[COPY3:%[0-9]+]]:_(s32) = COPY $a3144    ; MIPS32-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0145    ; MIPS32-NEXT: [[XOR:%[0-9]+]]:_(s32) = G_XOR [[COPY]], [[COPY2]]146    ; MIPS32-NEXT: [[XOR1:%[0-9]+]]:_(s32) = G_XOR [[COPY1]], [[COPY3]]147    ; MIPS32-NEXT: [[OR:%[0-9]+]]:_(s32) = G_OR [[XOR]], [[XOR1]]148    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(eq), [[OR]](s32), [[C]]149    ; MIPS32-NEXT: $v0 = COPY [[ICMP]](s32)150    ; MIPS32-NEXT: RetRA implicit $v0151    %2:_(s32) = COPY $a0152    %3:_(s32) = COPY $a1153    %0:_(s64) = G_MERGE_VALUES %2(s32), %3(s32)154    %4:_(s32) = COPY $a2155    %5:_(s32) = COPY $a3156    %1:_(s64) = G_MERGE_VALUES %4(s32), %5(s32)157    %6:_(s1) = G_ICMP intpred(eq), %0(s64), %1158    %7:_(s32) = G_ANYEXT %6(s1)159    $v0 = COPY %7(s32)160    RetRA implicit $v0161 162...163---164name:            ne_i64165alignment:       4166tracksRegLiveness: true167body:             |168  bb.1.entry:169    liveins: $a0, $a1, $a2, $a3170 171    ; MIPS32-LABEL: name: ne_i64172    ; MIPS32: liveins: $a0, $a1, $a2, $a3173    ; MIPS32-NEXT: {{  $}}174    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0175    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1176    ; MIPS32-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $a2177    ; MIPS32-NEXT: [[COPY3:%[0-9]+]]:_(s32) = COPY $a3178    ; MIPS32-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0179    ; MIPS32-NEXT: [[XOR:%[0-9]+]]:_(s32) = G_XOR [[COPY]], [[COPY2]]180    ; MIPS32-NEXT: [[XOR1:%[0-9]+]]:_(s32) = G_XOR [[COPY1]], [[COPY3]]181    ; MIPS32-NEXT: [[OR:%[0-9]+]]:_(s32) = G_OR [[XOR]], [[XOR1]]182    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(ne), [[OR]](s32), [[C]]183    ; MIPS32-NEXT: $v0 = COPY [[ICMP]](s32)184    ; MIPS32-NEXT: RetRA implicit $v0185    %2:_(s32) = COPY $a0186    %3:_(s32) = COPY $a1187    %0:_(s64) = G_MERGE_VALUES %2(s32), %3(s32)188    %4:_(s32) = COPY $a2189    %5:_(s32) = COPY $a3190    %1:_(s64) = G_MERGE_VALUES %4(s32), %5(s32)191    %6:_(s1) = G_ICMP intpred(ne), %0(s64), %1192    %7:_(s32) = G_ANYEXT %6(s1)193    $v0 = COPY %7(s32)194    RetRA implicit $v0195 196...197---198name:            sgt_i64199alignment:       4200tracksRegLiveness: true201body:             |202  bb.1.entry:203    liveins: $a0, $a1, $a2, $a3204 205    ; MIPS32-LABEL: name: sgt_i64206    ; MIPS32: liveins: $a0, $a1, $a2, $a3207    ; MIPS32-NEXT: {{  $}}208    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0209    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1210    ; MIPS32-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $a2211    ; MIPS32-NEXT: [[COPY3:%[0-9]+]]:_(s32) = COPY $a3212    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(ugt), [[COPY]](s32), [[COPY2]]213    ; MIPS32-NEXT: [[ICMP1:%[0-9]+]]:_(s32) = G_ICMP intpred(sgt), [[COPY1]](s32), [[COPY3]]214    ; MIPS32-NEXT: [[ICMP2:%[0-9]+]]:_(s32) = G_ICMP intpred(eq), [[COPY1]](s32), [[COPY3]]215    ; MIPS32-NEXT: [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[ICMP2]](s32), [[ICMP]], [[ICMP1]]216    ; MIPS32-NEXT: $v0 = COPY [[SELECT]](s32)217    ; MIPS32-NEXT: RetRA implicit $v0218    %2:_(s32) = COPY $a0219    %3:_(s32) = COPY $a1220    %0:_(s64) = G_MERGE_VALUES %2(s32), %3(s32)221    %4:_(s32) = COPY $a2222    %5:_(s32) = COPY $a3223    %1:_(s64) = G_MERGE_VALUES %4(s32), %5(s32)224    %6:_(s1) = G_ICMP intpred(sgt), %0(s64), %1225    %7:_(s32) = G_ANYEXT %6(s1)226    $v0 = COPY %7(s32)227    RetRA implicit $v0228 229...230---231name:            sge_i64232alignment:       4233tracksRegLiveness: true234body:             |235  bb.1.entry:236    liveins: $a0, $a1, $a2, $a3237 238    ; MIPS32-LABEL: name: sge_i64239    ; MIPS32: liveins: $a0, $a1, $a2, $a3240    ; MIPS32-NEXT: {{  $}}241    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0242    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1243    ; MIPS32-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $a2244    ; MIPS32-NEXT: [[COPY3:%[0-9]+]]:_(s32) = COPY $a3245    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(uge), [[COPY]](s32), [[COPY2]]246    ; MIPS32-NEXT: [[ICMP1:%[0-9]+]]:_(s32) = G_ICMP intpred(sge), [[COPY1]](s32), [[COPY3]]247    ; MIPS32-NEXT: [[ICMP2:%[0-9]+]]:_(s32) = G_ICMP intpred(eq), [[COPY1]](s32), [[COPY3]]248    ; MIPS32-NEXT: [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[ICMP2]](s32), [[ICMP]], [[ICMP1]]249    ; MIPS32-NEXT: $v0 = COPY [[SELECT]](s32)250    ; MIPS32-NEXT: RetRA implicit $v0251    %2:_(s32) = COPY $a0252    %3:_(s32) = COPY $a1253    %0:_(s64) = G_MERGE_VALUES %2(s32), %3(s32)254    %4:_(s32) = COPY $a2255    %5:_(s32) = COPY $a3256    %1:_(s64) = G_MERGE_VALUES %4(s32), %5(s32)257    %6:_(s1) = G_ICMP intpred(sge), %0(s64), %1258    %7:_(s32) = G_ANYEXT %6(s1)259    $v0 = COPY %7(s32)260    RetRA implicit $v0261 262...263---264name:            slt_i64265alignment:       4266tracksRegLiveness: true267body:             |268  bb.1.entry:269    liveins: $a0, $a1, $a2, $a3270 271    ; MIPS32-LABEL: name: slt_i64272    ; MIPS32: liveins: $a0, $a1, $a2, $a3273    ; MIPS32-NEXT: {{  $}}274    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0275    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1276    ; MIPS32-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $a2277    ; MIPS32-NEXT: [[COPY3:%[0-9]+]]:_(s32) = COPY $a3278    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(ult), [[COPY]](s32), [[COPY2]]279    ; MIPS32-NEXT: [[ICMP1:%[0-9]+]]:_(s32) = G_ICMP intpred(slt), [[COPY1]](s32), [[COPY3]]280    ; MIPS32-NEXT: [[ICMP2:%[0-9]+]]:_(s32) = G_ICMP intpred(eq), [[COPY1]](s32), [[COPY3]]281    ; MIPS32-NEXT: [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[ICMP2]](s32), [[ICMP]], [[ICMP1]]282    ; MIPS32-NEXT: $v0 = COPY [[SELECT]](s32)283    ; MIPS32-NEXT: RetRA implicit $v0284    %2:_(s32) = COPY $a0285    %3:_(s32) = COPY $a1286    %0:_(s64) = G_MERGE_VALUES %2(s32), %3(s32)287    %4:_(s32) = COPY $a2288    %5:_(s32) = COPY $a3289    %1:_(s64) = G_MERGE_VALUES %4(s32), %5(s32)290    %6:_(s1) = G_ICMP intpred(slt), %0(s64), %1291    %7:_(s32) = G_ANYEXT %6(s1)292    $v0 = COPY %7(s32)293    RetRA implicit $v0294 295...296---297name:            sle_i64298alignment:       4299tracksRegLiveness: true300body:             |301  bb.1.entry:302    liveins: $a0, $a1, $a2, $a3303 304    ; MIPS32-LABEL: name: sle_i64305    ; MIPS32: liveins: $a0, $a1, $a2, $a3306    ; MIPS32-NEXT: {{  $}}307    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0308    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1309    ; MIPS32-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $a2310    ; MIPS32-NEXT: [[COPY3:%[0-9]+]]:_(s32) = COPY $a3311    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(ule), [[COPY]](s32), [[COPY2]]312    ; MIPS32-NEXT: [[ICMP1:%[0-9]+]]:_(s32) = G_ICMP intpred(sle), [[COPY1]](s32), [[COPY3]]313    ; MIPS32-NEXT: [[ICMP2:%[0-9]+]]:_(s32) = G_ICMP intpred(eq), [[COPY1]](s32), [[COPY3]]314    ; MIPS32-NEXT: [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[ICMP2]](s32), [[ICMP]], [[ICMP1]]315    ; MIPS32-NEXT: $v0 = COPY [[SELECT]](s32)316    ; MIPS32-NEXT: RetRA implicit $v0317    %2:_(s32) = COPY $a0318    %3:_(s32) = COPY $a1319    %0:_(s64) = G_MERGE_VALUES %2(s32), %3(s32)320    %4:_(s32) = COPY $a2321    %5:_(s32) = COPY $a3322    %1:_(s64) = G_MERGE_VALUES %4(s32), %5(s32)323    %6:_(s1) = G_ICMP intpred(sle), %0(s64), %1324    %7:_(s32) = G_ANYEXT %6(s1)325    $v0 = COPY %7(s32)326    RetRA implicit $v0327 328...329---330name:            ugt_i64331alignment:       4332tracksRegLiveness: true333body:             |334  bb.1.entry:335    liveins: $a0, $a1, $a2, $a3336 337    ; MIPS32-LABEL: name: ugt_i64338    ; MIPS32: liveins: $a0, $a1, $a2, $a3339    ; MIPS32-NEXT: {{  $}}340    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0341    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1342    ; MIPS32-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $a2343    ; MIPS32-NEXT: [[COPY3:%[0-9]+]]:_(s32) = COPY $a3344    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(ugt), [[COPY]](s32), [[COPY2]]345    ; MIPS32-NEXT: [[ICMP1:%[0-9]+]]:_(s32) = G_ICMP intpred(ugt), [[COPY1]](s32), [[COPY3]]346    ; MIPS32-NEXT: [[ICMP2:%[0-9]+]]:_(s32) = G_ICMP intpred(eq), [[COPY1]](s32), [[COPY3]]347    ; MIPS32-NEXT: [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[ICMP2]](s32), [[ICMP]], [[ICMP1]]348    ; MIPS32-NEXT: $v0 = COPY [[SELECT]](s32)349    ; MIPS32-NEXT: RetRA implicit $v0350    %2:_(s32) = COPY $a0351    %3:_(s32) = COPY $a1352    %0:_(s64) = G_MERGE_VALUES %2(s32), %3(s32)353    %4:_(s32) = COPY $a2354    %5:_(s32) = COPY $a3355    %1:_(s64) = G_MERGE_VALUES %4(s32), %5(s32)356    %6:_(s1) = G_ICMP intpred(ugt), %0(s64), %1357    %7:_(s32) = G_ANYEXT %6(s1)358    $v0 = COPY %7(s32)359    RetRA implicit $v0360 361...362---363name:            uge_i64364alignment:       4365tracksRegLiveness: true366body:             |367  bb.1.entry:368    liveins: $a0, $a1, $a2, $a3369 370    ; MIPS32-LABEL: name: uge_i64371    ; MIPS32: liveins: $a0, $a1, $a2, $a3372    ; MIPS32-NEXT: {{  $}}373    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0374    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1375    ; MIPS32-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $a2376    ; MIPS32-NEXT: [[COPY3:%[0-9]+]]:_(s32) = COPY $a3377    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(uge), [[COPY]](s32), [[COPY2]]378    ; MIPS32-NEXT: [[ICMP1:%[0-9]+]]:_(s32) = G_ICMP intpred(uge), [[COPY1]](s32), [[COPY3]]379    ; MIPS32-NEXT: [[ICMP2:%[0-9]+]]:_(s32) = G_ICMP intpred(eq), [[COPY1]](s32), [[COPY3]]380    ; MIPS32-NEXT: [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[ICMP2]](s32), [[ICMP]], [[ICMP1]]381    ; MIPS32-NEXT: $v0 = COPY [[SELECT]](s32)382    ; MIPS32-NEXT: RetRA implicit $v0383    %2:_(s32) = COPY $a0384    %3:_(s32) = COPY $a1385    %0:_(s64) = G_MERGE_VALUES %2(s32), %3(s32)386    %4:_(s32) = COPY $a2387    %5:_(s32) = COPY $a3388    %1:_(s64) = G_MERGE_VALUES %4(s32), %5(s32)389    %6:_(s1) = G_ICMP intpred(uge), %0(s64), %1390    %7:_(s32) = G_ANYEXT %6(s1)391    $v0 = COPY %7(s32)392    RetRA implicit $v0393 394...395---396name:            ult_i64397alignment:       4398tracksRegLiveness: true399body:             |400  bb.1.entry:401    liveins: $a0, $a1, $a2, $a3402 403    ; MIPS32-LABEL: name: ult_i64404    ; MIPS32: liveins: $a0, $a1, $a2, $a3405    ; MIPS32-NEXT: {{  $}}406    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0407    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1408    ; MIPS32-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $a2409    ; MIPS32-NEXT: [[COPY3:%[0-9]+]]:_(s32) = COPY $a3410    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(ult), [[COPY]](s32), [[COPY2]]411    ; MIPS32-NEXT: [[ICMP1:%[0-9]+]]:_(s32) = G_ICMP intpred(ult), [[COPY1]](s32), [[COPY3]]412    ; MIPS32-NEXT: [[ICMP2:%[0-9]+]]:_(s32) = G_ICMP intpred(eq), [[COPY1]](s32), [[COPY3]]413    ; MIPS32-NEXT: [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[ICMP2]](s32), [[ICMP]], [[ICMP1]]414    ; MIPS32-NEXT: $v0 = COPY [[SELECT]](s32)415    ; MIPS32-NEXT: RetRA implicit $v0416    %2:_(s32) = COPY $a0417    %3:_(s32) = COPY $a1418    %0:_(s64) = G_MERGE_VALUES %2(s32), %3(s32)419    %4:_(s32) = COPY $a2420    %5:_(s32) = COPY $a3421    %1:_(s64) = G_MERGE_VALUES %4(s32), %5(s32)422    %6:_(s1) = G_ICMP intpred(ult), %0(s64), %1423    %7:_(s32) = G_ANYEXT %6(s1)424    $v0 = COPY %7(s32)425    RetRA implicit $v0426 427...428---429name:            ule_i64430alignment:       4431tracksRegLiveness: true432body:             |433  bb.1.entry:434    liveins: $a0, $a1, $a2, $a3435 436    ; MIPS32-LABEL: name: ule_i64437    ; MIPS32: liveins: $a0, $a1, $a2, $a3438    ; MIPS32-NEXT: {{  $}}439    ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $a0440    ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $a1441    ; MIPS32-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $a2442    ; MIPS32-NEXT: [[COPY3:%[0-9]+]]:_(s32) = COPY $a3443    ; MIPS32-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(ule), [[COPY]](s32), [[COPY2]]444    ; MIPS32-NEXT: [[ICMP1:%[0-9]+]]:_(s32) = G_ICMP intpred(ule), [[COPY1]](s32), [[COPY3]]445    ; MIPS32-NEXT: [[ICMP2:%[0-9]+]]:_(s32) = G_ICMP intpred(eq), [[COPY1]](s32), [[COPY3]]446    ; MIPS32-NEXT: [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[ICMP2]](s32), [[ICMP]], [[ICMP1]]447    ; MIPS32-NEXT: $v0 = COPY [[SELECT]](s32)448    ; MIPS32-NEXT: RetRA implicit $v0449    %2:_(s32) = COPY $a0450    %3:_(s32) = COPY $a1451    %0:_(s64) = G_MERGE_VALUES %2(s32), %3(s32)452    %4:_(s32) = COPY $a2453    %5:_(s32) = COPY $a3454    %1:_(s64) = G_MERGE_VALUES %4(s32), %5(s32)455    %6:_(s1) = G_ICMP intpred(ule), %0(s64), %1456    %7:_(s32) = G_ANYEXT %6(s1)457    $v0 = COPY %7(s32)458    RetRA implicit $v0459 460...461