@@ -769,22 +769,10 @@ define <16 x i8> @combine_lshr_pshufb(<4 x i32> %a0) {
769
769
; SSE-NEXT: pshufb {{.*#+}} xmm0 = zero,zero,zero,xmm0[3,5,6,7,4,10,11],zero,xmm0[9,14,15],zero,zero
770
770
; SSE-NEXT: retq
771
771
;
772
- ; AVX1-LABEL: combine_lshr_pshufb:
773
- ; AVX1: # %bb.0:
774
- ; AVX1-NEXT: vpshufb {{.*#+}} xmm0 = zero,zero,zero,xmm0[3,5,6,7,4,10,11],zero,xmm0[9,14,15],zero,zero
775
- ; AVX1-NEXT: retq
776
- ;
777
- ; AVX2-LABEL: combine_lshr_pshufb:
778
- ; AVX2: # %bb.0:
779
- ; AVX2-NEXT: vpsrlvd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
780
- ; AVX2-NEXT: vpshufb {{.*#+}} xmm0 = xmm0[1,2,3,0,5,6,7,4,9,10,11,8,12,13,14,15]
781
- ; AVX2-NEXT: retq
782
- ;
783
- ; AVX512F-LABEL: combine_lshr_pshufb:
784
- ; AVX512F: # %bb.0:
785
- ; AVX512F-NEXT: vpsrlvd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
786
- ; AVX512F-NEXT: vpshufb {{.*#+}} xmm0 = xmm0[1,2,3,0,5,6,7,4,9,10,11,8,12,13,14,15]
787
- ; AVX512F-NEXT: retq
772
+ ; AVX-LABEL: combine_lshr_pshufb:
773
+ ; AVX: # %bb.0:
774
+ ; AVX-NEXT: vpshufb {{.*#+}} xmm0 = zero,zero,zero,xmm0[3,5,6,7,4,10,11],zero,xmm0[9,14,15],zero,zero
775
+ ; AVX-NEXT: retq
788
776
%shr = lshr <4 x i32 > %a0 , <i32 24 , i32 0 , i32 8 , i32 16 >
789
777
%bc = bitcast <4 x i32 > %shr to <16 x i8 >
790
778
%shuffle = shufflevector <16 x i8 > %bc , <16 x i8 > poison, <16 x i32 > <i32 1 , i32 2 , i32 3 , i32 0 , i32 5 , i32 6 , i32 7 , i32 4 , i32 9 , i32 10 , i32 11 , i32 8 , i32 12 , i32 13 , i32 14 , i32 15 >
@@ -817,14 +805,12 @@ define <16 x i8> @combine_shl_pshufb(<4 x i32> %a0) {
817
805
;
818
806
; AVX2-LABEL: combine_shl_pshufb:
819
807
; AVX2: # %bb.0:
820
- ; AVX2-NEXT: vpsllvd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
821
- ; AVX2-NEXT: vpshufb {{.*#+}} xmm0 = xmm0[1,2,3,0,5,6,7,4,9,10,11,8,12,13,14,15]
808
+ ; AVX2-NEXT: vpshufb {{.*#+}} xmm0 = xmm0[1,2,3,0,4,5,6],zero,zero,xmm0[8,9],zero,zero,zero,xmm0[12,13]
822
809
; AVX2-NEXT: retq
823
810
;
824
811
; AVX512F-LABEL: combine_shl_pshufb:
825
812
; AVX512F: # %bb.0:
826
- ; AVX512F-NEXT: vpsllvd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
827
- ; AVX512F-NEXT: vpshufb {{.*#+}} xmm0 = xmm0[1,2,3,0,5,6,7,4,9,10,11,8,12,13,14,15]
813
+ ; AVX512F-NEXT: vpshufb {{.*#+}} xmm0 = xmm0[1,2,3,0,4,5,6],zero,zero,xmm0[8,9],zero,zero,zero,xmm0[12,13]
828
814
; AVX512F-NEXT: retq
829
815
%shr = shl <4 x i32 > %a0 , <i32 0 , i32 8 , i32 16 , i32 16 >
830
816
%bc = bitcast <4 x i32 > %shr to <16 x i8 >
0 commit comments