@@ -185,7 +185,8 @@ let Features = "sse", Attributes = [NoThrow, Const, RequiredVectorWidth<128>] in
185185  def cvttss2si : X86Builtin<" int(_Vector<4, float>)"  >;
186186}
187187
188- let Features = " sse"  , Attributes = [NoThrow, RequiredVectorWidth<128 >] in {
188+ let Features = " sse"  ,
189+     Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128 >] in {
189190  def movmskps : X86Builtin<" int(_Vector<4, float>)"  >;
190191}
191192
@@ -211,11 +212,6 @@ let Features = "sse2", Attributes = [NoThrow, RequiredVectorWidth<128>] in {
211212  def maskmovdqu : X86Builtin<" void(_Vector<16, char>, _Vector<16, char>, char *)"  >;
212213}
213214
214- let Features = " sse2"  , Attributes = [NoThrow, Const, RequiredVectorWidth<128 >] in {
215-   def movmskpd : X86Builtin<" int(_Vector<2, double>)"  >;
216-   def pmovmskb128 : X86Builtin<" int(_Vector<16, char>)"  >;
217- }
218- 
219215let Features = " sse2"  , Attributes = [NoThrow] in {
220216  def movnti : X86Builtin<" void(int *, int)"  >;
221217}
@@ -224,6 +220,8 @@ let Features = "sse2", Attributes = [NoThrow, Const, Constexpr, RequiredVectorWi
224220  def pshuflw : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Constant int)"  >;
225221  def pshufd : X86Builtin<" _Vector<4, int>(_Vector<4, int>, _Constant int)"  >;
226222  def pshufhw : X86Builtin<" _Vector<8, short>(_Vector<8, short>, _Constant int)"  >;
223+   def movmskpd : X86Builtin<" int(_Vector<2, double>)"  >;
224+   def pmovmskb128 : X86Builtin<" int(_Vector<16, char>)"  >;
227225}
228226
229227let Features = " sse2"  , Attributes = [NoThrow, Const, RequiredVectorWidth<128 >] in {
@@ -562,11 +560,8 @@ let Features = "avx",
562560  def vtestnzcps256 : X86Builtin<" int(_Vector<8, float>, _Vector<8, float>)"  >;
563561  def ptestz256 : X86Builtin<" int(_Vector<4, long long int>, _Vector<4, long long int>)"  >;
564562  def ptestc256 : X86Builtin<" int(_Vector<4, long long int>, _Vector<4, long long int>)"  >;
565-   def ptestnzc256 : X86Builtin<" int(_Vector<4, long long int>, _Vector<4, long long int>)"  >;
566- }
567- 
568- let Features = " avx"  ,
569-     Attributes = [NoThrow, Const, RequiredVectorWidth<256 >] in {
563+   def ptestnzc256
564+       : X86Builtin<" int(_Vector<4, long long int>, _Vector<4, long long int>)"  >;
570565  def movmskpd256 : X86Builtin<" int(_Vector<4, double>)"  >;
571566  def movmskps256 : X86Builtin<" int(_Vector<8, float>)"  >;
572567}
@@ -605,9 +600,9 @@ let Features = "avx", Attributes = [NoThrow, Const, Constexpr, RequiredVectorWid
605600
606601let Features = " avx2"  , Attributes = [NoThrow, Const, RequiredVectorWidth<256 >] in {
607602  def mpsadbw256 : X86Builtin<" _Vector<32, char>(_Vector<32, char>, _Vector<32, char>, _Constant char)"  >;
608-   def palignr256 : X86Builtin<" _Vector<32, char>(_Vector<32, char>, _Vector<32, char>, _Constant int) " >; 
609- 
610-   def pmovmskb256  : X86Builtin<" int (_Vector<32, char >)"  >;
603+   def palignr256 : X86Builtin<" _Vector<32, char>(_Vector<32, char>, " 
604+                                " _Vector<32, char>, _Constant int) " >; 
605+   def pmulhrsw256  : X86Builtin<" _Vector<16, short> (_Vector<16, short>, _Vector<16, short >)"  >;
611606  def psadbw256 : X86Builtin<" _Vector<4, long long int>(_Vector<32, char>, _Vector<32, char>)"  >;
612607  def psignb256 : X86Builtin<" _Vector<32, char>(_Vector<32, char>, _Vector<32, char>)"  >;
613608  def psignw256 : X86Builtin<" _Vector<16, short>(_Vector<16, short>, _Vector<16, short>)"  >;
@@ -632,6 +627,7 @@ let Features = "avx2", Attributes = [NoThrow, Const, RequiredVectorWidth<256>] i
632627
633628
634629let Features = " avx2"  , Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<256 >] in {
630+   def pmovmskb256 : X86Builtin<" int(_Vector<32, char>)"  >;
635631  def pavgb256 : X86Builtin<" _Vector<32, unsigned char>(_Vector<32, unsigned char>, _Vector<32, unsigned char>)"  >;
636632  def pavgw256 : X86Builtin<" _Vector<16, unsigned short>(_Vector<16, unsigned short>, _Vector<16, unsigned short>)"  >;
637633
0 commit comments