1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py 2# RUN: llc -mtriple=riscv32 -mattr=+zbb -run-pass=instruction-select \ 3# RUN: -simplify-mir -verify-machineinstrs %s -o - \ 4# RUN: | FileCheck -check-prefix=RV32I %s 5 6--- 7name: smax_i32 8legalized: true 9regBankSelected: true 10body: | 11 bb.0.entry: 12 ; RV32I-LABEL: name: smax_i32 13 ; RV32I: [[COPY:%[0-9]+]]:gpr = COPY $x10 14 ; RV32I-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11 15 ; RV32I-NEXT: [[MAX:%[0-9]+]]:gpr = MAX [[COPY]], [[COPY1]] 16 ; RV32I-NEXT: $x10 = COPY [[MAX]] 17 ; RV32I-NEXT: PseudoRET implicit $x10 18 %0:gprb(s32) = COPY $x10 19 %1:gprb(s32) = COPY $x11 20 %2:gprb(s32) = G_SMAX %0, %1 21 $x10 = COPY %2(s32) 22 PseudoRET implicit $x10 23 24... 25--- 26name: smin_i32 27legalized: true 28regBankSelected: true 29body: | 30 bb.0.entry: 31 ; RV32I-LABEL: name: smin_i32 32 ; RV32I: [[COPY:%[0-9]+]]:gpr = COPY $x10 33 ; RV32I-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11 34 ; RV32I-NEXT: [[MIN:%[0-9]+]]:gpr = MIN [[COPY]], [[COPY1]] 35 ; RV32I-NEXT: $x10 = COPY [[MIN]] 36 ; RV32I-NEXT: PseudoRET implicit $x10 37 %0:gprb(s32) = COPY $x10 38 %1:gprb(s32) = COPY $x11 39 %2:gprb(s32) = G_SMIN %0, %1 40 $x10 = COPY %2(s32) 41 PseudoRET implicit $x10 42 43... 44--- 45name: umax_i32 46legalized: true 47regBankSelected: true 48body: | 49 bb.0.entry: 50 ; RV32I-LABEL: name: umax_i32 51 ; RV32I: [[COPY:%[0-9]+]]:gpr = COPY $x10 52 ; RV32I-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11 53 ; RV32I-NEXT: [[MAXU:%[0-9]+]]:gpr = MAXU [[COPY]], [[COPY1]] 54 ; RV32I-NEXT: $x10 = COPY [[MAXU]] 55 ; RV32I-NEXT: PseudoRET implicit $x10 56 %0:gprb(s32) = COPY $x10 57 %1:gprb(s32) = COPY $x11 58 %2:gprb(s32) = G_UMAX %0, %1 59 $x10 = COPY %2(s32) 60 PseudoRET implicit $x10 61 62... 63--- 64name: umin_i32 65legalized: true 66regBankSelected: true 67body: | 68 bb.0.entry: 69 ; RV32I-LABEL: name: umin_i32 70 ; RV32I: [[COPY:%[0-9]+]]:gpr = COPY $x10 71 ; RV32I-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x11 72 ; RV32I-NEXT: [[MINU:%[0-9]+]]:gpr = MINU [[COPY]], [[COPY1]] 73 ; RV32I-NEXT: $x10 = COPY [[MINU]] 74 ; RV32I-NEXT: PseudoRET implicit $x10 75 %0:gprb(s32) = COPY $x10 76 %1:gprb(s32) = COPY $x11 77 %2:gprb(s32) = G_UMIN %0, %1 78 $x10 = COPY %2(s32) 79 PseudoRET implicit $x10 80 81... 82