@@ -210,17 +210,6 @@ let Header = "emmintrin.h", Attributes = [NoThrow, RequireDeclaration] in {
210210 def _mm_pause : X86LibBuiltin<" void()" >;
211211}
212212
213- let Features = " sse2" , Attributes = [NoThrow, Const, RequiredVectorWidth<128 >] in {
214- def psraw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
215- def psrad128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
216- def psrlw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
217- def psrld128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
218- def psrlq128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)" >;
219- def psllw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
220- def pslld128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
221- def psllq128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)" >;
222- }
223-
224213let Features = " sse2" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128 >] in {
225214 def movmskpd : X86Builtin<" int(_Vector<2, double>)" >;
226215 def pmovmskb128 : X86Builtin<" int(_Vector<16, char>)" >;
@@ -261,6 +250,15 @@ let Features = "sse2", Attributes = [NoThrow, Const, Constexpr, RequiredVectorWi
261250 def vec_ext_v4sf : X86Builtin<" float(_Vector<4, float>, _Constant int)" >;
262251 def vec_ext_v8hi : X86Builtin<" short(_Vector<8, short>, _Constant int)" >;
263252 def vec_set_v8hi : X86Builtin<" _Vector<8, short>(_Vector<8, short>, short, _Constant int)" >;
253+
254+ def psraw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
255+ def psrad128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
256+ def psrlw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
257+ def psrld128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
258+ def psrlq128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)" >;
259+ def psllw128 : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Vector<8, short>)" >;
260+ def pslld128 : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Vector<4, int>)" >;
261+ def psllq128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)" >;
264262}
265263
266264let Features = " sse3" , Attributes = [NoThrow] in {
@@ -579,14 +577,6 @@ let Features = "avx2", Attributes = [NoThrow, Const, RequiredVectorWidth<256>] i
579577 def psadbw256
580578 : X86Builtin<
581579 " _Vector<4, long long int>(_Vector<32, char>, _Vector<32, char>)" >;
582- def psllw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
583- def pslld256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
584- def psllq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>)" >;
585- def psraw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
586- def psrad256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
587- def psrlw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
588- def psrld256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
589- def psrlq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>)" >;
590580 def permdf256 : X86Builtin<" _Vector<4, double>(_Vector<4, double>, _Constant int)" >;
591581 def permti256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<4, long long int>, _Constant int)" >;
592582 def permdi256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Constant int)" >;
@@ -663,6 +653,15 @@ let Features = "avx2", Attributes = [NoThrow, Const, Constexpr, RequiredVectorWi
663653
664654 def permvarsi256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<8, int>)" >;
665655 def permvarsf256 : X86Builtin<" _Vector<8, float>(_Vector<8, float>, _Vector<8, int>)" >;
656+
657+ def psllw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
658+ def pslld256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
659+ def psllq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>)" >;
660+ def psraw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
661+ def psrad256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
662+ def psrlw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<8, short>)" >;
663+ def psrld256 : X86Builtin<" _Vector<8, int>(_Vector<8, int>, _Vector<4, int>)" >;
664+ def psrlq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>)" >;
666665}
667666
668667let Features = " avx2" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128 >] in {
@@ -1926,16 +1925,13 @@ let Features = "avx512vl", Attributes = [NoThrow, Const, Constexpr, RequiredVect
19261925 def prorq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Constant int)" >;
19271926}
19281927
1929- let Features = " avx512bw" , Attributes = [NoThrow, Const, RequiredVectorWidth<512 >] in {
1930- def psllw512 : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Vector<8, short>)" >;
1931- }
1932-
19331928let Features = " avx512bw" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<512 >] in {
19341929 def pmaddubsw512 : X86Builtin<" _Vector<32, short>(_Vector<64, char>, _Vector<64, char>)" >;
19351930 def pmaddwd512 : X86Builtin<" _Vector<16, int>(_Vector<32, short>, _Vector<32, short>)" >;
19361931 def psllv32hi : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Vector<32, short>)" >;
19371932 def pshufhw512 : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Constant int)" >;
19381933 def pshuflw512 : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Constant int)" >;
1934+ def psllw512 : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Vector<8, short>)" >;
19391935}
19401936
19411937let Features = " avx512bw,avx512vl" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<256 >] in {
@@ -1991,7 +1987,7 @@ let Features = "avx512vl", Attributes = [NoThrow, Const, Constexpr, RequiredVect
19911987 def psravq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<4, long long int>)" >;
19921988}
19931989
1994- let Features = " avx512bw" , Attributes = [NoThrow, Const, RequiredVectorWidth<512 >] in {
1990+ let Features = " avx512bw" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<512 >] in {
19951991 def psraw512
19961992 : X86Builtin<" _Vector<32, short>(_Vector<32, short>, _Vector<8, short>)" >;
19971993 def psrlw512
@@ -2308,25 +2304,17 @@ let Features = "avx512f",
23082304 def psraqi512 : X86Builtin<" _Vector<8, long long int>(_Vector<8, long long int>, int)" >;
23092305}
23102306
2311- let Features = " avx512vl" , Attributes = [NoThrow, Const, RequiredVectorWidth<128 >] in {
2307+ let Features = " avx512vl" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128 >] in {
23122308 def psraq128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)" >;
2313- }
2314-
2315- let Features = " avx512vl" , Attributes = [NoThrow, Const, RequiredVectorWidth<256 >] in {
2316- def psraq256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>)" >;
2317- }
2318-
2319- let Features = " avx512vl" ,
2320- Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128 >] in {
23212309 def psraqi128 : X86Builtin<" _Vector<2, long long int>(_Vector<2, long long int>, int)" >;
23222310}
23232311
2324- let Features = " avx512vl" ,
2325- Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth< 256 >] in {
2312+ let Features = " avx512vl" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth< 256 >] in {
2313+ def psraq256 : X86Builtin< " _Vector<4, long long int>(_Vector<4, long long int>, _Vector<2, long long int>) " >;
23262314 def psraqi256 : X86Builtin<" _Vector<4, long long int>(_Vector<4, long long int>, int)" >;
23272315}
23282316
2329- let Features = " avx512f" , Attributes = [NoThrow, Const, RequiredVectorWidth<512 >] in {
2317+ let Features = " avx512f" , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<512 >] in {
23302318 def pslld512 : X86Builtin<" _Vector<16, int>(_Vector<16, int>, _Vector<4, int>)" >;
23312319 def psllq512 : X86Builtin<" _Vector<8, long long int>(_Vector<8, long long int>, _Vector<2, long long int>)" >;
23322320 def psrad512 : X86Builtin<" _Vector<16, int>(_Vector<16, int>, _Vector<4, int>)" >;
0 commit comments