Skip to content

Commit e1f8690

Browse files
authored
[X86] BuiltinsX86.td - move the SSE constexpr builtins together. NFC. (#167323)
Makes it much easier to workout what still needs to be converted to be constexpr compatible
1 parent 241bfac commit e1f8690

File tree

1 file changed

+24
-28
lines changed

1 file changed

+24
-28
lines changed

clang/include/clang/Basic/BuiltinsX86.td

Lines changed: 24 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -93,22 +93,6 @@ let Attributes = [Const, NoThrow, RequiredVectorWidth<128>] in {
9393
}
9494

9595

96-
let Features = "sse2", Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128>] in {
97-
def pavgb128 : X86Builtin<"_Vector<16, unsigned char>(_Vector<16, unsigned char>, _Vector<16, unsigned char>)">;
98-
def pavgw128 : X86Builtin<"_Vector<8, unsigned short>(_Vector<8, unsigned short>, _Vector<8, unsigned short>)">;
99-
def pmulhw128 : X86Builtin<"_Vector<8, short>(_Vector<8, short>, _Vector<8, short>)">;
100-
def pmulhuw128 : X86Builtin<"_Vector<8, unsigned short>(_Vector<8, unsigned short>, _Vector<8, unsigned short>)">;
101-
def packsswb128 : X86Builtin<"_Vector<16, char>(_Vector<8, short>, _Vector<8, short>)">;
102-
def packssdw128 : X86Builtin<"_Vector<8, short>(_Vector<4, int>, _Vector<4, int>)">;
103-
def packuswb128 : X86Builtin<"_Vector<16, char>(_Vector<8, short>, _Vector<8, short>)">;
104-
105-
def vec_ext_v2di : X86Builtin<"long long int(_Vector<2, long long int>, _Constant int)">;
106-
def vec_ext_v4si : X86Builtin<"int(_Vector<4, int>, _Constant int)">;
107-
def vec_ext_v4sf : X86Builtin<"float(_Vector<4, float>, _Constant int)">;
108-
def vec_ext_v8hi : X86Builtin<"short(_Vector<8, short>, _Constant int)">;
109-
def vec_set_v8hi : X86Builtin<"_Vector<8, short>(_Vector<8, short>, short, _Constant int)">;
110-
}
111-
11296
let Features = "sse3" in {
11397
foreach Op = ["addsub"] in {
11498
def Op#ps : X86Builtin<"_Vector<4, float>(_Vector<4, float>, _Vector<4, float>)">;
@@ -219,15 +203,6 @@ let Features = "sse2", Attributes = [NoThrow] in {
219203
def movnti : X86Builtin<"void(int *, int)">;
220204
}
221205

222-
let Features = "sse2", Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128>] in {
223-
def pshuflw : X86Builtin<"_Vector<8, short>(_Vector<8, short>, _Constant int)">;
224-
def pshufd : X86Builtin<"_Vector<4, int>(_Vector<4, int>, _Constant int)">;
225-
def pshufhw : X86Builtin<"_Vector<8, short>(_Vector<8, short>, _Constant int)">;
226-
def movmskpd : X86Builtin<"int(_Vector<2, double>)">;
227-
def pmovmskb128 : X86Builtin<"int(_Vector<16, char>)">;
228-
def shufpd : X86Builtin<"_Vector<2, double>(_Vector<2, double>, _Vector<2, double>, _Constant int)">;
229-
}
230-
231206
let Features = "sse2", Attributes = [NoThrow, Const, RequiredVectorWidth<128>] in {
232207
def psadbw128 : X86Builtin<"_Vector<2, long long int>(_Vector<16, char>, _Vector<16, char>)">;
233208
def sqrtpd : X86Builtin<"_Vector<2, double>(_Vector<2, double>)">;
@@ -285,12 +260,27 @@ let Features = "sse2", Attributes = [NoThrow, Const, RequiredVectorWidth<128>] i
285260
def psllq128 : X86Builtin<"_Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>)">;
286261
}
287262

288-
let Features = "sse2",
289-
Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128>] in {
263+
let Features = "sse2", Attributes = [NoThrow, Const, Constexpr, RequiredVectorWidth<128>] in {
264+
def movmskpd : X86Builtin<"int(_Vector<2, double>)">;
265+
def pmovmskb128 : X86Builtin<"int(_Vector<16, char>)">;
266+
267+
def pavgb128 : X86Builtin<"_Vector<16, unsigned char>(_Vector<16, unsigned char>, _Vector<16, unsigned char>)">;
268+
def pavgw128 : X86Builtin<"_Vector<8, unsigned short>(_Vector<8, unsigned short>, _Vector<8, unsigned short>)">;
269+
290270
def pmaddwd128 : X86Builtin<"_Vector<4, int>(_Vector<8, short>, _Vector<8, short>)">;
291-
271+
def pmulhw128 : X86Builtin<"_Vector<8, short>(_Vector<8, short>, _Vector<8, short>)">;
272+
def pmulhuw128 : X86Builtin<"_Vector<8, unsigned short>(_Vector<8, unsigned short>, _Vector<8, unsigned short>)">;
292273
def pmuludq128 : X86Builtin<"_Vector<2, long long int>(_Vector<4, int>, _Vector<4, int>)">;
293274

275+
def packsswb128 : X86Builtin<"_Vector<16, char>(_Vector<8, short>, _Vector<8, short>)">;
276+
def packssdw128 : X86Builtin<"_Vector<8, short>(_Vector<4, int>, _Vector<4, int>)">;
277+
def packuswb128 : X86Builtin<"_Vector<16, char>(_Vector<8, short>, _Vector<8, short>)">;
278+
279+
def pshuflw : X86Builtin<"_Vector<8, short>(_Vector<8, short>, _Constant int)">;
280+
def pshufd : X86Builtin<"_Vector<4, int>(_Vector<4, int>, _Constant int)">;
281+
def pshufhw : X86Builtin<"_Vector<8, short>(_Vector<8, short>, _Constant int)">;
282+
def shufpd : X86Builtin<"_Vector<2, double>(_Vector<2, double>, _Vector<2, double>, _Constant int)">;
283+
294284
def psllwi128 : X86Builtin<"_Vector<8, short>(_Vector<8, short>, int)">;
295285
def pslldi128 : X86Builtin<"_Vector<4, int>(_Vector<4, int>, int)">;
296286
def psllqi128 : X86Builtin<"_Vector<2, long long int>(_Vector<2, long long int>, int)">;
@@ -304,6 +294,12 @@ let Features = "sse2",
304294

305295
def pslldqi128_byteshift : X86Builtin<"_Vector<16, char>(_Vector<16, char>, _Constant int)">;
306296
def psrldqi128_byteshift : X86Builtin<"_Vector<16, char>(_Vector<16, char>, _Constant int)">;
297+
298+
def vec_ext_v2di : X86Builtin<"long long int(_Vector<2, long long int>, _Constant int)">;
299+
def vec_ext_v4si : X86Builtin<"int(_Vector<4, int>, _Constant int)">;
300+
def vec_ext_v4sf : X86Builtin<"float(_Vector<4, float>, _Constant int)">;
301+
def vec_ext_v8hi : X86Builtin<"short(_Vector<8, short>, _Constant int)">;
302+
def vec_set_v8hi : X86Builtin<"_Vector<8, short>(_Vector<8, short>, short, _Constant int)">;
307303
}
308304

309305
let Features = "sse3", Attributes = [NoThrow] in {

0 commit comments

Comments
 (0)