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
12 liveins: $sgpr0, $sgpr1
13 ; GCN-LABEL: name: umax_s32_ss
14 ; GCN: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
15 ; GCN: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
16 ; GCN: [[S_MAX_U32_:%[0-9]+]]:sreg_32 = S_MAX_U32 [[COPY]], [[COPY1]], implicit-def $scc
17 ; GCN: S_ENDPGM 0, implicit [[S_MAX_U32_]]
18 %0:sgpr(s32) = COPY $sgpr0
19 %1:sgpr(s32) = COPY $sgpr1
20 %2:sgpr(s32) = G_UMAX %0, %1
21 S_ENDPGM 0, implicit %2
31 liveins: $sgpr0, $vgpr0
32 ; GCN-LABEL: name: umax_s32_sv
33 ; GCN: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
34 ; GCN: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr0
35 ; GCN: [[V_MAX_U32_e64_:%[0-9]+]]:vgpr_32 = V_MAX_U32_e64 [[COPY]], [[COPY1]], implicit $exec
36 ; GCN: S_ENDPGM 0, implicit [[V_MAX_U32_e64_]]
37 %0:sgpr(s32) = COPY $sgpr0
38 %1:vgpr(s32) = COPY $vgpr0
39 %2:vgpr(s32) = G_UMAX %0, %1
40 S_ENDPGM 0, implicit %2
50 liveins: $sgpr0, $vgpr0
51 ; GCN-LABEL: name: umax_s32_vs
52 ; GCN: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr0
53 ; GCN: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr0
54 ; GCN: [[V_MAX_U32_e64_:%[0-9]+]]:vgpr_32 = V_MAX_U32_e64 [[COPY]], [[COPY1]], implicit $exec
55 ; GCN: S_ENDPGM 0, implicit [[V_MAX_U32_e64_]]
56 %0:vgpr(s32) = COPY $vgpr0
57 %1:sgpr(s32) = COPY $sgpr0
58 %2:vgpr(s32) = G_UMAX %0, %1
59 S_ENDPGM 0, implicit %2
69 liveins: $vgpr0, $vgpr1
70 ; GCN-LABEL: name: umax_s32_vv
71 ; GCN: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr0
72 ; GCN: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr1
73 ; GCN: [[V_MAX_U32_e64_:%[0-9]+]]:vgpr_32 = V_MAX_U32_e64 [[COPY]], [[COPY1]], implicit $exec
74 ; GCN: S_ENDPGM 0, implicit [[V_MAX_U32_e64_]]
75 %0:vgpr(s32) = COPY $vgpr0
76 %1:vgpr(s32) = COPY $vgpr1
77 %2:vgpr(s32) = G_UMAX %0, %1
78 S_ENDPGM 0, implicit %2