[clang] [X86] Merge matching XOP Features/Attributes blocks. NFC. (PR #155999)
Simon Pilgrim via cfe-commits
cfe-commits at lists.llvm.org
Fri Aug 29 02:49:25 PDT 2025
https://github.com/RKSimon created https://github.com/llvm/llvm-project/pull/155999
Minor cleanup to help when I begin splitting off constexpr capable builtins
>From b6a0b20cadf78f39facfd1f83a28143dae0f8c32 Mon Sep 17 00:00:00 2001
From: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: Fri, 29 Aug 2025 10:48:50 +0100
Subject: [PATCH] [X86] Merge matching XOP Features/Attributes blocks. NFC.
Minor cleanup to help when I begin splitting off constexpr capable builtins
---
clang/include/clang/Basic/BuiltinsX86.td | 19 +++----------------
1 file changed, 3 insertions(+), 16 deletions(-)
diff --git a/clang/include/clang/Basic/BuiltinsX86.td b/clang/include/clang/Basic/BuiltinsX86.td
index 0bc93d75c9724..7ef81225575d6 100644
--- a/clang/include/clang/Basic/BuiltinsX86.td
+++ b/clang/include/clang/Basic/BuiltinsX86.td
@@ -872,8 +872,7 @@ let Features = "fma|fma4", Attributes = [NoThrow, Const, RequiredVectorWidth<128
def vfmaddsubpd : X86Builtin<"_Vector<2, double>(_Vector<2, double>, _Vector<2, double>, _Vector<2, double>)">;
}
-let Features = "fma|fma4",
- Attributes = [NoThrow, Const, RequiredVectorWidth<256>] in {
+let Features = "fma|fma4", Attributes = [NoThrow, Const, RequiredVectorWidth<256>] in {
def vfmaddsubps256 : X86Builtin<"_Vector<8, float>(_Vector<8, float>, _Vector<8, float>, _Vector<8, float>)">;
def vfmaddsubpd256 : X86Builtin<"_Vector<4, double>(_Vector<4, double>, _Vector<4, double>, _Vector<4, double>)">;
}
@@ -947,21 +946,7 @@ let Features = "xop", Attributes = [NoThrow, Const, RequiredVectorWidth<128>] in
def vpcomd : X86Builtin<"_Vector<4, int>(_Vector<4, int>, _Vector<4, int>, _Constant char)">;
def vpcomq : X86Builtin<"_Vector<2, long long int>(_Vector<2, long long int>, _Vector<2, long long int>, _Constant char)">;
def vpermil2pd : X86Builtin<"_Vector<2, double>(_Vector<2, double>, _Vector<2, double>, _Vector<2, long long int>, _Constant char)">;
-}
-
-let Features = "xop", Attributes = [NoThrow, Const, RequiredVectorWidth<256>] in {
- def vpermil2pd256 : X86Builtin<"_Vector<4, double>(_Vector<4, double>, _Vector<4, double>, _Vector<4, long long int>, _Constant char)">;
-}
-
-let Features = "xop", Attributes = [NoThrow, Const, RequiredVectorWidth<128>] in {
def vpermil2ps : X86Builtin<"_Vector<4, float>(_Vector<4, float>, _Vector<4, float>, _Vector<4, int>, _Constant char)">;
-}
-
-let Features = "xop", Attributes = [NoThrow, Const, RequiredVectorWidth<256>] in {
- def vpermil2ps256 : X86Builtin<"_Vector<8, float>(_Vector<8, float>, _Vector<8, float>, _Vector<8, int>, _Constant char)">;
-}
-
-let Features = "xop", Attributes = [NoThrow, Const, RequiredVectorWidth<128>] in {
def vfrczss : X86Builtin<"_Vector<4, float>(_Vector<4, float>)">;
def vfrczsd : X86Builtin<"_Vector<2, double>(_Vector<2, double>)">;
def vfrczps : X86Builtin<"_Vector<4, float>(_Vector<4, float>)">;
@@ -969,6 +954,8 @@ let Features = "xop", Attributes = [NoThrow, Const, RequiredVectorWidth<128>] in
}
let Features = "xop", Attributes = [NoThrow, Const, RequiredVectorWidth<256>] in {
+ def vpermil2pd256 : X86Builtin<"_Vector<4, double>(_Vector<4, double>, _Vector<4, double>, _Vector<4, long long int>, _Constant char)">;
+ def vpermil2ps256 : X86Builtin<"_Vector<8, float>(_Vector<8, float>, _Vector<8, float>, _Vector<8, int>, _Constant char)">;
def vfrczps256 : X86Builtin<"_Vector<8, float>(_Vector<8, float>)">;
def vfrczpd256 : X86Builtin<"_Vector<4, double>(_Vector<4, double>)">;
}
More information about the cfe-commits
mailing list