96 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -mcpu=fiji -run-pass=regbankselect -regbankselect-fast -verify-machineinstrs -o - %s | FileCheck -check-prefix=GFX8 %s3# RUN: llc -mtriple=amdgcn -mcpu=fiji -run-pass=regbankselect -regbankselect-greedy -verify-machineinstrs -o - %s | FileCheck -check-prefix=GFX8 %s4 5---6name: icmp_eq_s16_ss7legalized: true8 9body: |10 bb.0:11 liveins: $sgpr0, $sgpr112 ; GFX8-LABEL: name: icmp_eq_s16_ss13 ; GFX8: liveins: $sgpr0, $sgpr114 ; GFX8-NEXT: {{ $}}15 ; GFX8-NEXT: [[COPY:%[0-9]+]]:sgpr(s32) = COPY $sgpr016 ; GFX8-NEXT: [[COPY1:%[0-9]+]]:sgpr(s32) = COPY $sgpr117 ; GFX8-NEXT: [[TRUNC:%[0-9]+]]:sgpr(s16) = G_TRUNC [[COPY]](s32)18 ; GFX8-NEXT: [[TRUNC1:%[0-9]+]]:sgpr(s16) = G_TRUNC [[COPY1]](s32)19 ; GFX8-NEXT: [[COPY2:%[0-9]+]]:vgpr(s16) = COPY [[TRUNC]](s16)20 ; GFX8-NEXT: [[COPY3:%[0-9]+]]:vgpr(s16) = COPY [[TRUNC1]](s16)21 ; GFX8-NEXT: [[ICMP:%[0-9]+]]:vcc(s1) = G_ICMP intpred(eq), [[COPY2]](s16), [[COPY3]]22 %0:_(s32) = COPY $sgpr023 %1:_(s32) = COPY $sgpr124 %2:_(s16) = G_TRUNC %025 %3:_(s16) = G_TRUNC %126 %4:_(s1) = G_ICMP intpred(eq), %2, %327...28 29---30name: icmp_eq_s16_sv31legalized: true32 33body: |34 bb.0:35 liveins: $sgpr0, $vgpr036 ; GFX8-LABEL: name: icmp_eq_s16_sv37 ; GFX8: liveins: $sgpr0, $vgpr038 ; GFX8-NEXT: {{ $}}39 ; GFX8-NEXT: [[COPY:%[0-9]+]]:sgpr(s32) = COPY $sgpr040 ; GFX8-NEXT: [[COPY1:%[0-9]+]]:vgpr(s32) = COPY $vgpr041 ; GFX8-NEXT: [[TRUNC:%[0-9]+]]:sgpr(s16) = G_TRUNC [[COPY]](s32)42 ; GFX8-NEXT: [[TRUNC1:%[0-9]+]]:vgpr(s16) = G_TRUNC [[COPY1]](s32)43 ; GFX8-NEXT: [[COPY2:%[0-9]+]]:vgpr(s16) = COPY [[TRUNC]](s16)44 ; GFX8-NEXT: [[ICMP:%[0-9]+]]:vcc(s1) = G_ICMP intpred(eq), [[COPY2]](s16), [[TRUNC1]]45 %0:_(s32) = COPY $sgpr046 %1:_(s32) = COPY $vgpr047 %2:_(s16) = G_TRUNC %048 %3:_(s16) = G_TRUNC %149 %4:_(s1) = G_ICMP intpred(eq), %2, %350...51 52---53name: icmp_eq_s16_vs54legalized: true55 56body: |57 bb.0:58 liveins: $sgpr0, $vgpr059 ; GFX8-LABEL: name: icmp_eq_s16_vs60 ; GFX8: liveins: $sgpr0, $vgpr061 ; GFX8-NEXT: {{ $}}62 ; GFX8-NEXT: [[COPY:%[0-9]+]]:sgpr(s32) = COPY $sgpr063 ; GFX8-NEXT: [[COPY1:%[0-9]+]]:vgpr(s32) = COPY $vgpr064 ; GFX8-NEXT: [[TRUNC:%[0-9]+]]:sgpr(s16) = G_TRUNC [[COPY]](s32)65 ; GFX8-NEXT: [[TRUNC1:%[0-9]+]]:vgpr(s16) = G_TRUNC [[COPY1]](s32)66 ; GFX8-NEXT: [[COPY2:%[0-9]+]]:vgpr(s16) = COPY [[TRUNC]](s16)67 ; GFX8-NEXT: [[ICMP:%[0-9]+]]:vcc(s1) = G_ICMP intpred(eq), [[COPY2]](s16), [[TRUNC1]]68 %0:_(s32) = COPY $sgpr069 %1:_(s32) = COPY $vgpr070 %2:_(s16) = G_TRUNC %071 %3:_(s16) = G_TRUNC %172 %4:_(s1) = G_ICMP intpred(eq), %2, %373...74 75---76name: icmp_eq_s16_vv77legalized: true78 79body: |80 bb.0:81 liveins: $vgpr0, $vgpr182 ; GFX8-LABEL: name: icmp_eq_s16_vv83 ; GFX8: liveins: $vgpr0, $vgpr184 ; GFX8-NEXT: {{ $}}85 ; GFX8-NEXT: [[COPY:%[0-9]+]]:vgpr(s32) = COPY $vgpr086 ; GFX8-NEXT: [[COPY1:%[0-9]+]]:vgpr(s32) = COPY $vgpr187 ; GFX8-NEXT: [[TRUNC:%[0-9]+]]:vgpr(s16) = G_TRUNC [[COPY]](s32)88 ; GFX8-NEXT: [[TRUNC1:%[0-9]+]]:vgpr(s16) = G_TRUNC [[COPY1]](s32)89 ; GFX8-NEXT: [[ICMP:%[0-9]+]]:vcc(s1) = G_ICMP intpred(eq), [[TRUNC]](s16), [[TRUNC1]]90 %0:_(s32) = COPY $vgpr091 %1:_(s32) = COPY $vgpr192 %2:_(s16) = G_TRUNC %093 %3:_(s16) = G_TRUNC %194 %4:_(s1) = G_ICMP intpred(eq), %2, %395...96