@@ -214,17 +214,6 @@ let Header = "emmintrin.h", Attributes = [NoThrow, RequireDeclaration] in {
214214 def _mm_pause : X86LibBuiltin<" void()" >;
215215}
216216
217- let Features = " sse2" , Attributes = [NoThrow, Const, RequiredVectorWidth<128 >] in {
218- def psraw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
219- def psrad128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
220- def psrlw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
221- def psrld128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
222- def psrlq128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)" >;
223- def psllw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
224- def pslld128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
225- def psllq128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)" >;
226- }
227-
228217let Features = " sse2" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128 >] in {
229218 def movmskpd : X86Builtin<" int(_Vector<2, double>)" >;
230219 def pmovmskb128 : X86Builtin<" int(_Vector<16, char>)" >;
@@ -265,6 +254,15 @@ let Features = "sse2", Attributes = [NoThrow, Const, Constexpr, RequiredVectorWi
265254 def vec_ext_v4sf : X86Builtin<" float(_Vector<4, float>, _Constant int)" >;
266255 def vec_ext_v8hi : X86Builtin<" short(_Vector<8, short>, _Constant int)" >;
267256 def vec_set_v8hi : X86Builtin<" _Vector<8, short>(_Vector<8, short>, short, _Constant int)" >;
257+
258+ def psraw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
259+ def psrad128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
260+ def psrlw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
261+ def psrld128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
262+ def psrlq128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)" >;
263+ def psllw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
264+ def pslld128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
265+ def psllq128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)" >;
268266}
269267
270268let Features = " sse3" , Attributes = [NoThrow] in {
@@ -585,14 +583,6 @@ let Features = "avx2", Attributes = [NoThrow, Const, RequiredVectorWidth<256>] i
585583 def psadbw256
586584 : X86Builtin<
587585 " _Vector<4, long long int>(_Vector<32, char>, _Vector<32, char>)" >;
588- def psllw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
589- def pslld256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
590- def psllq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>)" >;
591- def psraw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
592- def psrad256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
593- def psrlw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
594- def psrld256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
595- def psrlq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>)" >;
596586 def permdf256 : X86Builtin<" _Vector<4, double>(_Vector<4, double>, _Constant int)" >;
597587 def permti256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<4, long long int>, _Constant int)" >;
598588 def permdi256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Constant int)" >;
@@ -669,6 +659,15 @@ let Features = "avx2", Attributes = [NoThrow, Const, Constexpr, RequiredVectorWi
669659
670660 def permvarsi256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<8, int>)" >;
671661 def permvarsf256 : X86Builtin<" _Vector<8, float>(_Vector<8, float>, _Vector<8, int>)" >;
662+
663+ def psllw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
664+ def pslld256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
665+ def psllq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>)" >;
666+ def psraw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
667+ def psrad256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
668+ def psrlw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
669+ def psrld256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
670+ def psrlq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>)" >;
672671}
673672
674673let Features = " avx2" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128 >] in {
@@ -1930,16 +1929,13 @@ let Features = "avx512vl", Attributes = [NoThrow, Const, Constexpr, RequiredVect
19301929 def prorq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Constant int)" >;
19311930}
19321931
1933- let Features = " avx512bw" , Attributes = [NoThrow, Const, RequiredVectorWidth<512 >] in {
1934- def psllw512 : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Vector<8, short>)" >;
1935- }
1936-
19371932let Features = " avx512bw" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<512 >] in {
19381933 def pmaddubsw512 : X86Builtin<" _Vector<32, short>(_Vector<64, char>, _Vector<64, char>)" >;
19391934 def pmaddwd512 : X86Builtin<" _Vector<16, int>(_Vector<32, short>, _Vector<32, short>)" >;
19401935 def psllv32hi : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Vector<32, short>)" >;
19411936 def pshufhw512 : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Constant int)" >;
19421937 def pshuflw512 : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Constant int)" >;
1938+ def psllw512 : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Vector<8, short>)" >;
19431939}
19441940
19451941let Features = " avx512bw,avx512vl" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<256 >] in {
@@ -1995,7 +1991,7 @@ let Features = "avx512vl", Attributes = [NoThrow, Const, Constexpr, RequiredVect
19951991 def psravq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<4, long long int>)" >;
19961992}
19971993
1998- let Features = " avx512bw" , Attributes = [NoThrow, Const, RequiredVectorWidth<512 >] in {
1994+ let Features = " avx512bw" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<512 >] in {
19991995 def psraw512
20001996 : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Vector<8, short>)" >;
20011997 def psrlw512
@@ -2312,25 +2308,17 @@ let Features = "avx512f",
23122308 def psraqi512 : X86Builtin<" _Vector<8, long long int>(_Vector<8, long long int>, int)" >;
23132309}
23142310
2315- let Features = " avx512vl" , Attributes = [NoThrow, Const, RequiredVectorWidth<128 >] in {
2311+ let Features = " avx512vl" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128 >] in {
23162312 def psraq128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)" >;
2317- }
2318-
2319- let Features = " avx512vl" , Attributes = [NoThrow, Const, RequiredVectorWidth<256 >] in {
2320- def psraq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>)" >;
2321- }
2322-
2323- let Features = " avx512vl" ,
2324- Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128 >] in {
23252313 def psraqi128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, int)" >;
23262314}
23272315
2328- let Features = " avx512vl" ,
2329- Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth< 256 >] in {
2316+ let Features = " avx512vl" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth< 256 >] in {
2317+ def psraq256 : X86Builtin< " _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>) " >;
23302318 def psraqi256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, int)" >;
23312319}
23322320
2333- let Features = " avx512f" , Attributes = [NoThrow, Const, RequiredVectorWidth<512 >] in {
2321+ let Features = " avx512f" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<512 >] in {
23342322 def pslld512 : X86Builtin<" _Vector<16, int>(_Vector<16, int>, _Vector<4, int>)" >;
23352323 def psllq512 : X86Builtin<" _Vector<8, long long int>(_Vector<8, long long int>, _Vector<2, long long int>)" >;
23362324 def psrad512 : X86Builtin<" _Vector<16, int>(_Vector<16, int>, _Vector<4, int>)" >;
0 commit comments