@@ -777,80 +777,80 @@ void test_core(void) {
777
777
// CHECK: <2 x i64> splat (i64 -4503582447501313)
778
778
779
779
vsc = vec_splat (vsc , 0 );
780
- // CHECK: shufflevector <16 x i8> %{{.*}}, <16 x i8> poison, <16 x i32> zeroinitializer
781
- // CHECK-ASM: vrepb
780
+ // CHECK: shufflevector <1 x i8> %{{.*}}, <1 x i8> poison, <16 x i32> zeroinitializer
781
+ // CHECK-ASM: vlrepb
782
782
vsc = vec_splat (vsc , 15 );
783
783
// CHECK: shufflevector <16 x i8> %{{.*}}, <16 x i8> poison, <16 x i32> <i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15>
784
784
// CHECK-ASM: vrepb
785
785
vuc = vec_splat (vuc , 0 );
786
- // CHECK: shufflevector <16 x i8> % {{.*}}, <16 x i8> poison, <16 x i32> zeroinitializer
787
- // CHECK-ASM: vrepb
786
+ // CHECK: store volatile <16 x i8> splat (i8 {{.*}}), ptr @vuc
787
+ // CHECK-ASM: vst
788
788
vuc = vec_splat (vuc , 15 );
789
789
// CHECK: shufflevector <16 x i8> %{{.*}}, <16 x i8> poison, <16 x i32> <i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15>
790
790
// CHECK-ASM: vrepb
791
791
vbc = vec_splat (vbc , 0 );
792
- // CHECK: shufflevector <16 x i8> %{{.*}}, <16 x i8> poison, <16 x i32> zeroinitializer
793
- // CHECK-ASM: vrepb
792
+ // CHECK: shufflevector <1 x i8> %{{.*}}, <1 x i8> poison, <16 x i32> zeroinitializer
793
+ // CHECK-ASM: vlrepb
794
794
vbc = vec_splat (vbc , 15 );
795
795
// CHECK: shufflevector <16 x i8> %{{.*}}, <16 x i8> poison, <16 x i32> <i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15, i32 15>
796
796
// CHECK-ASM: vrepb
797
797
vss = vec_splat (vss , 0 );
798
- // CHECK: shufflevector <8 x i16> %{{.*}}, <8 x i16> poison, <8 x i32> zeroinitializer
799
- // CHECK-ASM: vreph
798
+ // CHECK: shufflevector <1 x i16> %{{.*}}, <1 x i16> poison, <8 x i32> zeroinitializer
799
+ // CHECK-ASM: vlreph
800
800
vss = vec_splat (vss , 7 );
801
801
// CHECK: shufflevector <8 x i16> %{{.*}}, <8 x i16> poison, <8 x i32> <i32 7, i32 7, i32 7, i32 7, i32 7, i32 7, i32 7, i32 7>
802
802
// CHECK-ASM: vreph
803
803
vus = vec_splat (vus , 0 );
804
- // CHECK: shufflevector <8 x i16> % {{.*}}, <8 x i16> poison, <8 x i32> zeroinitializer
805
- // CHECK-ASM: vreph
804
+ // CHECK: store volatile <8 x i16> splat (i16 {{.*}}), ptr @vus
805
+ // CHECK-ASM: vst
806
806
vus = vec_splat (vus , 7 );
807
807
// CHECK: shufflevector <8 x i16> %{{.*}}, <8 x i16> poison, <8 x i32> <i32 7, i32 7, i32 7, i32 7, i32 7, i32 7, i32 7, i32 7>
808
808
// CHECK-ASM: vreph
809
809
vbs = vec_splat (vbs , 0 );
810
- // CHECK: shufflevector <8 x i16> %{{.*}}, <8 x i16> poison, <8 x i32> zeroinitializer
811
- // CHECK-ASM: vreph
810
+ // CHECK: shufflevector <1 x i16> %{{.*}}, <1 x i16> poison, <8 x i32> zeroinitializer
811
+ // CHECK-ASM: vlreph
812
812
vbs = vec_splat (vbs , 7 );
813
813
// CHECK: shufflevector <8 x i16> %{{.*}}, <8 x i16> poison, <8 x i32> <i32 7, i32 7, i32 7, i32 7, i32 7, i32 7, i32 7, i32 7>
814
814
// CHECK-ASM: vreph
815
815
vsi = vec_splat (vsi , 0 );
816
- // CHECK: shufflevector <4 x i32> %{{.*}}, <4 x i32> poison, <4 x i32> zeroinitializer
817
- // CHECK-ASM: vrepf
816
+ // CHECK: shufflevector <1 x i32> %{{.*}}, <1 x i32> poison, <4 x i32> zeroinitializer
817
+ // CHECK-ASM: vlrepf
818
818
vsi = vec_splat (vsi , 3 );
819
819
// CHECK: shufflevector <4 x i32> %{{.*}}, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
820
820
// CHECK-ASM: vrepf
821
821
vui = vec_splat (vui , 0 );
822
- // CHECK: shufflevector <4 x i32> % {{.*}}, <4 x i32> poison, <4 x i32> zeroinitializer
823
- // CHECK-ASM: vrepf
822
+ // CHECK: store volatile <4 x i32> splat (i32 {{.*}}), ptr @vui
823
+ // CHECK-ASM: vst
824
824
vui = vec_splat (vui , 3 );
825
825
// CHECK: shufflevector <4 x i32> %{{.*}}, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
826
826
// CHECK-ASM: vrepf
827
827
vbi = vec_splat (vbi , 0 );
828
- // CHECK: shufflevector <4 x i32> %{{.*}}, <4 x i32> poison, <4 x i32> zeroinitializer
829
- // CHECK-ASM: vrepf
828
+ // CHECK: shufflevector <1 x i32> %{{.*}}, <1 x i32> poison, <4 x i32> zeroinitializer
829
+ // CHECK-ASM: vlrepf
830
830
vbi = vec_splat (vbi , 3 );
831
831
// CHECK: shufflevector <4 x i32> %{{.*}}, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
832
832
// CHECK-ASM: vrepf
833
833
vsl = vec_splat (vsl , 0 );
834
- // CHECK: shufflevector <2 x i64> %{{.*}}, <2 x i64> poison, <2 x i32> zeroinitializer
834
+ // CHECK: shufflevector <1 x i64> %{{.*}}, <1 x i64> poison, <2 x i32> zeroinitializer
835
835
// CHECK-ASM: vrepg
836
836
vsl = vec_splat (vsl , 1 );
837
837
// CHECK: shufflevector <2 x i64> %{{.*}}, <2 x i64> poison, <2 x i32> <i32 1, i32 1>
838
- // CHECK-ASM: vrepg
838
+ // CHECK-ASM: vst
839
839
vul = vec_splat (vul , 0 );
840
- // CHECK: shufflevector <2 x i64> % {{.*}}, <2 x i64> poison, <2 x i32> zeroinitializer
841
- // CHECK-ASM: vrepg
840
+ // CHECK: store volatile <2 x i64> splat (i64 {{.*}}), ptr @vul
841
+ // CHECK-ASM: vst
842
842
vul = vec_splat (vul , 1 );
843
843
// CHECK: shufflevector <2 x i64> %{{.*}}, <2 x i64> poison, <2 x i32> <i32 1, i32 1>
844
844
// CHECK-ASM: vrepg
845
845
vbl = vec_splat (vbl , 0 );
846
- // CHECK: shufflevector <2 x i64> %{{.*}}, <2 x i64> poison, <2 x i32> zeroinitializer
847
- // CHECK-ASM: vrepg
846
+ // CHECK: shufflevector <1 x i64> %{{.*}}, <1 x i64> poison, <2 x i32> zeroinitializer
847
+ // CHECK-ASM: vlrepg
848
848
vbl = vec_splat (vbl , 1 );
849
849
// CHECK: shufflevector <2 x i64> %{{.*}}, <2 x i64> poison, <2 x i32> <i32 1, i32 1>
850
850
// CHECK-ASM: vrepg
851
851
vd = vec_splat (vd , 0 );
852
- // CHECK: shufflevector <2 x double> %{{.*}}, <2 x double> poison, <2 x i32> zeroinitializer
853
- // CHECK-ASM: vrepg
852
+ // CHECK: shufflevector <1 x double> %{{.*}}, <1 x double> poison, <2 x i32> zeroinitializer
853
+ // CHECK-ASM: vlrepg
854
854
vd = vec_splat (vd , 1 );
855
855
// CHECK: shufflevector <2 x double> %{{.*}}, <2 x double> poison, <2 x i32> <i32 1, i32 1>
856
856
// CHECK-ASM: vrepg
0 commit comments