1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py 2# RUN: llc -march=amdgcn -mcpu=gfx900 -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck -check-prefix=GCN %s 3# RUN: llc -march=amdgcn -mcpu=gfx1010 -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck -check-prefix=GCN %s 4 5--- 6name: smin_s32_ss 7legalized: true 8regBankSelected: true 9 10body: | 11 bb.0: 12 liveins: $sgpr0, $sgpr1 13 ; GCN-LABEL: name: smin_s32_ss 14 ; GCN: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0 15 ; GCN: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1 16 ; GCN: [[S_MIN_I32_:%[0-9]+]]:sreg_32 = S_MIN_I32 [[COPY]], [[COPY1]], implicit-def $scc 17 ; GCN: S_ENDPGM 0, implicit [[S_MIN_I32_]] 18 %0:sgpr(s32) = COPY $sgpr0 19 %1:sgpr(s32) = COPY $sgpr1 20 %2:sgpr(s32) = G_SMIN %0, %1 21 S_ENDPGM 0, implicit %2 22... 23 24--- 25name: smin_s32_sv 26legalized: true 27regBankSelected: true 28 29body: | 30 bb.0: 31 liveins: $sgpr0, $vgpr0 32 ; GCN-LABEL: name: smin_s32_sv 33 ; GCN: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0 34 ; GCN: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr0 35 ; GCN: [[V_MIN_I32_e64_:%[0-9]+]]:vgpr_32 = V_MIN_I32_e64 [[COPY]], [[COPY1]], implicit $exec 36 ; GCN: S_ENDPGM 0, implicit [[V_MIN_I32_e64_]] 37 %0:sgpr(s32) = COPY $sgpr0 38 %1:vgpr(s32) = COPY $vgpr0 39 %2:vgpr(s32) = G_SMIN %0, %1 40 S_ENDPGM 0, implicit %2 41... 42 43--- 44name: smin_s32_vs 45legalized: true 46regBankSelected: true 47 48body: | 49 bb.0: 50 liveins: $sgpr0, $vgpr0 51 ; GCN-LABEL: name: smin_s32_vs 52 ; GCN: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr0 53 ; GCN: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr0 54 ; GCN: [[V_MIN_I32_e64_:%[0-9]+]]:vgpr_32 = V_MIN_I32_e64 [[COPY]], [[COPY1]], implicit $exec 55 ; GCN: S_ENDPGM 0, implicit [[V_MIN_I32_e64_]] 56 %0:vgpr(s32) = COPY $vgpr0 57 %1:sgpr(s32) = COPY $sgpr0 58 %2:vgpr(s32) = G_SMIN %0, %1 59 S_ENDPGM 0, implicit %2 60... 61 62--- 63name: smin_s32_vv 64legalized: true 65regBankSelected: true 66 67body: | 68 bb.0: 69 liveins: $vgpr0, $vgpr1 70 ; GCN-LABEL: name: smin_s32_vv 71 ; GCN: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr0 72 ; GCN: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr1 73 ; GCN: [[V_MIN_I32_e64_:%[0-9]+]]:vgpr_32 = V_MIN_I32_e64 [[COPY]], [[COPY1]], implicit $exec 74 ; GCN: S_ENDPGM 0, implicit [[V_MIN_I32_e64_]] 75 %0:vgpr(s32) = COPY $vgpr0 76 %1:vgpr(s32) = COPY $vgpr1 77 %2:vgpr(s32) = G_SMIN %0, %1 78 S_ENDPGM 0, implicit %2 79... 80