1
1
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2
- # RUN: llc -mtriple=amdgcn-- -O0 -run-pass=legalizer -global-isel-abort=0 - o - %s | FileCheck %s
2
+ # RUN: llc -mtriple=amdgcn-- -O0 -run-pass=legalizer -o - %s | FileCheck %s
3
3
4
4
---
5
5
name : test_unmerge_s32_s64
@@ -694,14 +694,21 @@ body: |
694
694
liveins: $vgpr0
695
695
; CHECK-LABEL: name: test_unmerge_s1_s3
696
696
; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY $vgpr0
697
- ; CHECK: [[TRUNC:%[0-9]+]]:_(s3) = G_TRUNC [[COPY]](s32)
698
- ; CHECK: [[UV:%[0-9]+]]:_(s1), [[UV1:%[0-9]+]]:_(s1), [[UV2:%[0-9]+]]:_(s1) = G_UNMERGE_VALUES [[TRUNC]](s3)
699
- ; CHECK: [[ANYEXT:%[0-9]+]]:_(s32) = G_ANYEXT [[UV]](s1)
700
- ; CHECK: [[ANYEXT1:%[0-9]+]]:_(s32) = G_ANYEXT [[UV1]](s1)
701
- ; CHECK: [[ANYEXT2:%[0-9]+]]:_(s32) = G_ANYEXT [[UV2]](s1)
702
- ; CHECK: $vgpr0 = COPY [[ANYEXT]](s32)
703
- ; CHECK: $vgpr1 = COPY [[ANYEXT1]](s32)
704
- ; CHECK: $vgpr2 = COPY [[ANYEXT2]](s32)
697
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
698
+ ; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 65535
699
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
700
+ ; CHECK: [[AND:%[0-9]+]]:_(s32) = G_AND [[COPY1]], [[C1]]
701
+ ; CHECK: [[LSHR:%[0-9]+]]:_(s32) = G_LSHR [[AND]], [[C]](s32)
702
+ ; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
703
+ ; CHECK: [[COPY2:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
704
+ ; CHECK: [[AND1:%[0-9]+]]:_(s32) = G_AND [[COPY2]], [[C1]]
705
+ ; CHECK: [[LSHR1:%[0-9]+]]:_(s32) = G_LSHR [[AND1]], [[C2]](s32)
706
+ ; CHECK: [[COPY3:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
707
+ ; CHECK: [[COPY4:%[0-9]+]]:_(s32) = COPY [[LSHR]](s32)
708
+ ; CHECK: [[COPY5:%[0-9]+]]:_(s32) = COPY [[LSHR1]](s32)
709
+ ; CHECK: $vgpr0 = COPY [[COPY3]](s32)
710
+ ; CHECK: $vgpr1 = COPY [[COPY4]](s32)
711
+ ; CHECK: $vgpr2 = COPY [[COPY5]](s32)
705
712
%0:_(s32) = COPY $vgpr0
706
713
%1:_(s3) = G_TRUNC %0
707
714
%2:_(s1), %3:_(s1), %4:_(s1) = G_UNMERGE_VALUES %1
@@ -720,24 +727,51 @@ body: |
720
727
liveins: $vgpr0
721
728
; CHECK-LABEL: name: test_unmerge_s1_s8
722
729
; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY $vgpr0
723
- ; CHECK: [[TRUNC:%[0-9]+]]:_(s8) = G_TRUNC [[COPY]](s32)
724
- ; CHECK: [[UV:%[0-9]+]]:_(s1), [[UV1:%[0-9]+]]:_(s1), [[UV2:%[0-9]+]]:_(s1), [[UV3:%[0-9]+]]:_(s1), [[UV4:%[0-9]+]]:_(s1), [[UV5:%[0-9]+]]:_(s1), [[UV6:%[0-9]+]]:_(s1), [[UV7:%[0-9]+]]:_(s1) = G_UNMERGE_VALUES [[TRUNC]](s8)
725
- ; CHECK: [[ANYEXT:%[0-9]+]]:_(s32) = G_ANYEXT [[UV]](s1)
726
- ; CHECK: [[ANYEXT1:%[0-9]+]]:_(s32) = G_ANYEXT [[UV1]](s1)
727
- ; CHECK: [[ANYEXT2:%[0-9]+]]:_(s32) = G_ANYEXT [[UV2]](s1)
728
- ; CHECK: [[ANYEXT3:%[0-9]+]]:_(s32) = G_ANYEXT [[UV3]](s1)
729
- ; CHECK: [[ANYEXT4:%[0-9]+]]:_(s32) = G_ANYEXT [[UV4]](s1)
730
- ; CHECK: [[ANYEXT5:%[0-9]+]]:_(s32) = G_ANYEXT [[UV5]](s1)
731
- ; CHECK: [[ANYEXT6:%[0-9]+]]:_(s32) = G_ANYEXT [[UV6]](s1)
732
- ; CHECK: [[ANYEXT7:%[0-9]+]]:_(s32) = G_ANYEXT [[UV7]](s1)
733
- ; CHECK: $vgpr0 = COPY [[ANYEXT]](s32)
734
- ; CHECK: $vgpr1 = COPY [[ANYEXT1]](s32)
735
- ; CHECK: $vgpr2 = COPY [[ANYEXT2]](s32)
736
- ; CHECK: $vgpr3 = COPY [[ANYEXT3]](s32)
737
- ; CHECK: $vgpr4 = COPY [[ANYEXT4]](s32)
738
- ; CHECK: $vgpr5 = COPY [[ANYEXT5]](s32)
739
- ; CHECK: $vgpr6 = COPY [[ANYEXT6]](s32)
740
- ; CHECK: $vgpr7 = COPY [[ANYEXT7]](s32)
730
+ ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
731
+ ; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 65535
732
+ ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
733
+ ; CHECK: [[AND:%[0-9]+]]:_(s32) = G_AND [[COPY1]], [[C1]]
734
+ ; CHECK: [[LSHR:%[0-9]+]]:_(s32) = G_LSHR [[AND]], [[C]](s32)
735
+ ; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 2
736
+ ; CHECK: [[COPY2:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
737
+ ; CHECK: [[AND1:%[0-9]+]]:_(s32) = G_AND [[COPY2]], [[C1]]
738
+ ; CHECK: [[LSHR1:%[0-9]+]]:_(s32) = G_LSHR [[AND1]], [[C2]](s32)
739
+ ; CHECK: [[C3:%[0-9]+]]:_(s32) = G_CONSTANT i32 3
740
+ ; CHECK: [[COPY3:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
741
+ ; CHECK: [[AND2:%[0-9]+]]:_(s32) = G_AND [[COPY3]], [[C1]]
742
+ ; CHECK: [[LSHR2:%[0-9]+]]:_(s32) = G_LSHR [[AND2]], [[C3]](s32)
743
+ ; CHECK: [[C4:%[0-9]+]]:_(s32) = G_CONSTANT i32 4
744
+ ; CHECK: [[COPY4:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
745
+ ; CHECK: [[AND3:%[0-9]+]]:_(s32) = G_AND [[COPY4]], [[C1]]
746
+ ; CHECK: [[LSHR3:%[0-9]+]]:_(s32) = G_LSHR [[AND3]], [[C4]](s32)
747
+ ; CHECK: [[C5:%[0-9]+]]:_(s32) = G_CONSTANT i32 5
748
+ ; CHECK: [[COPY5:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
749
+ ; CHECK: [[AND4:%[0-9]+]]:_(s32) = G_AND [[COPY5]], [[C1]]
750
+ ; CHECK: [[LSHR4:%[0-9]+]]:_(s32) = G_LSHR [[AND4]], [[C5]](s32)
751
+ ; CHECK: [[C6:%[0-9]+]]:_(s32) = G_CONSTANT i32 6
752
+ ; CHECK: [[COPY6:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
753
+ ; CHECK: [[AND5:%[0-9]+]]:_(s32) = G_AND [[COPY6]], [[C1]]
754
+ ; CHECK: [[LSHR5:%[0-9]+]]:_(s32) = G_LSHR [[AND5]], [[C6]](s32)
755
+ ; CHECK: [[C7:%[0-9]+]]:_(s32) = G_CONSTANT i32 7
756
+ ; CHECK: [[COPY7:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
757
+ ; CHECK: [[AND6:%[0-9]+]]:_(s32) = G_AND [[COPY7]], [[C1]]
758
+ ; CHECK: [[LSHR6:%[0-9]+]]:_(s32) = G_LSHR [[AND6]], [[C7]](s32)
759
+ ; CHECK: [[COPY8:%[0-9]+]]:_(s32) = COPY [[COPY]](s32)
760
+ ; CHECK: [[COPY9:%[0-9]+]]:_(s32) = COPY [[LSHR]](s32)
761
+ ; CHECK: [[COPY10:%[0-9]+]]:_(s32) = COPY [[LSHR1]](s32)
762
+ ; CHECK: [[COPY11:%[0-9]+]]:_(s32) = COPY [[LSHR2]](s32)
763
+ ; CHECK: [[COPY12:%[0-9]+]]:_(s32) = COPY [[LSHR3]](s32)
764
+ ; CHECK: [[COPY13:%[0-9]+]]:_(s32) = COPY [[LSHR4]](s32)
765
+ ; CHECK: [[COPY14:%[0-9]+]]:_(s32) = COPY [[LSHR5]](s32)
766
+ ; CHECK: [[COPY15:%[0-9]+]]:_(s32) = COPY [[LSHR6]](s32)
767
+ ; CHECK: $vgpr0 = COPY [[COPY8]](s32)
768
+ ; CHECK: $vgpr1 = COPY [[COPY9]](s32)
769
+ ; CHECK: $vgpr2 = COPY [[COPY10]](s32)
770
+ ; CHECK: $vgpr3 = COPY [[COPY11]](s32)
771
+ ; CHECK: $vgpr4 = COPY [[COPY12]](s32)
772
+ ; CHECK: $vgpr5 = COPY [[COPY13]](s32)
773
+ ; CHECK: $vgpr6 = COPY [[COPY14]](s32)
774
+ ; CHECK: $vgpr7 = COPY [[COPY15]](s32)
741
775
%0:_(s32) = COPY $vgpr0
742
776
%1:_(s8) = G_TRUNC %0
743
777
%2:_(s1), %3:_(s1), %4:_(s1), %5:_(s1), %6:_(s1), %7:_(s1), %8:_(s1), %9:_(s1) = G_UNMERGE_VALUES %1
0 commit comments