[llvm-branch-commits] [llvm] release/18.x: [X86] Add missing subvector_subreg_lowering for BF16 (#83720) (PR #83758)

2024-03-03 Thread Freddy Ye via llvm-branch-commits

https://github.com/FreddyLeaf approved this pull request.

LGTM

https://github.com/llvm/llvm-project/pull/83758
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [llvm] release/18.x: [X86] Add missing subvector_subreg_lowering for BF16 (#83720) (PR #84491)

2024-03-08 Thread Freddy Ye via llvm-branch-commits

https://github.com/FreddyLeaf approved this pull request.

LGTM

https://github.com/llvm/llvm-project/pull/84491
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [llvm] ea62cce - avxifma

2022-09-05 Thread Freddy Ye via llvm-branch-commits

Author: Freddy Ye
Date: 2022-09-05T22:51:22+08:00
New Revision: ea62cce7c72d152406d6cd91754a3153c1300c31

URL: 
https://github.com/llvm/llvm-project/commit/ea62cce7c72d152406d6cd91754a3153c1300c31
DIFF: 
https://github.com/llvm/llvm-project/commit/ea62cce7c72d152406d6cd91754a3153c1300c31.diff

LOG: avxifma

Added: 
clang/lib/Headers/avxifmaintrin.h
clang/test/CodeGen/avxifma-builtins.c
llvm/test/CodeGen/X86/avx-ifma-intrinsics.ll
llvm/test/MC/Disassembler/X86/avx-ifma-att.txt
llvm/test/MC/Disassembler/X86/avx-ifma-intel.txt
llvm/test/MC/Disassembler/X86/x86-64-avx-ifma-att.txt
llvm/test/MC/Disassembler/X86/x86-64-avx-ifma-intel.txt
llvm/test/MC/X86/avx-ifma-att.s
llvm/test/MC/X86/avx-ifma-intel.s
llvm/test/MC/X86/x86-64-avx-ifma-att.s

Modified: 
clang/include/clang/Basic/BuiltinsX86.def
clang/include/clang/Driver/Options.td
clang/lib/Basic/Targets/X86.cpp
clang/lib/Basic/Targets/X86.h
clang/lib/Headers/CMakeLists.txt
clang/lib/Headers/immintrin.h
clang/test/CodeGen/attr-target-x86.c
clang/test/Driver/x86-target-features.c
clang/test/Preprocessor/predefined-arch-macros-x86.c
clang/test/Preprocessor/x86_target_features.c
llvm/include/llvm/IR/IntrinsicsX86.td
llvm/include/llvm/Support/X86TargetParser.def
llvm/lib/Support/X86TargetParser.cpp
llvm/lib/Target/X86/X86.td
llvm/lib/Target/X86/X86InstrFoldTables.cpp
llvm/lib/Target/X86/X86InstrInfo.cpp
llvm/lib/Target/X86/X86InstrInfo.td
llvm/lib/Target/X86/X86InstrSSE.td
llvm/lib/Target/X86/X86IntrinsicsInfo.h

Removed: 




diff  --git a/clang/include/clang/Basic/BuiltinsX86.def 
b/clang/include/clang/Basic/BuiltinsX86.def
index ad8509e6124d4..c79dd20867ae1 100644
--- a/clang/include/clang/Basic/BuiltinsX86.def
+++ b/clang/include/clang/Basic/BuiltinsX86.def
@@ -1326,6 +1326,10 @@ TARGET_BUILTIN(__builtin_ia32_movdqa64load128_mask, 
"V2OiV2OiC*V2OiUc", "nV:128:
 TARGET_BUILTIN(__builtin_ia32_movdqa64load256_mask, "V4OiV4OiC*V4OiUc", 
"nV:256:", "avx512vl")
 TARGET_BUILTIN(__builtin_ia32_movdqa64store128_mask, "vV2Oi*V2OiUc", 
"nV:128:", "avx512vl")
 TARGET_BUILTIN(__builtin_ia32_movdqa64store256_mask, "vV4Oi*V4OiUc", 
"nV:256:", "avx512vl")
+TARGET_BUILTIN(__builtin_ia32_vpmadd52huqvex128, "V2OiV2OiV2OiV2Oi", 
"ncV:128:", "avxifma")
+TARGET_BUILTIN(__builtin_ia32_vpmadd52huqvex256, "V4OiV4OiV4OiV4Oi", 
"ncV:256:", "avxifma")
+TARGET_BUILTIN(__builtin_ia32_vpmadd52luqvex128, "V2OiV2OiV2OiV2Oi", 
"ncV:128:", "avxifma")
+TARGET_BUILTIN(__builtin_ia32_vpmadd52luqvex256, "V4OiV4OiV4OiV4Oi", 
"ncV:256:", "avxifma")
 TARGET_BUILTIN(__builtin_ia32_vpmadd52huq512, "V8OiV8OiV8OiV8Oi", "ncV:512:", 
"avx512ifma")
 TARGET_BUILTIN(__builtin_ia32_vpmadd52luq512, "V8OiV8OiV8OiV8Oi", "ncV:512:", 
"avx512ifma")
 TARGET_BUILTIN(__builtin_ia32_vpmadd52huq128, "V2OiV2OiV2OiV2Oi", "ncV:128:", 
"avx512ifma,avx512vl")

diff  --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index d921ea5d5da99..4eaf752ea1c28 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -4544,6 +4544,8 @@ def mavx512vpopcntdq : Flag<["-"], "mavx512vpopcntdq">, 
Group, 
Group;
 def mavx512vp2intersect : Flag<["-"], "mavx512vp2intersect">, 
Group;
 def mno_avx512vp2intersect : Flag<["-"], "mno-avx512vp2intersect">, 
Group;
+def mavxifma : Flag<["-"], "mavxifma">, Group;
+def mno_avxifma : Flag<["-"], "mno-avxifma">, Group;
 def mavxvnni : Flag<["-"], "mavxvnni">, Group;
 def mno_avxvnni : Flag<["-"], "mno-avxvnni">, Group;
 def madx : Flag<["-"], "madx">, Group;

diff  --git a/clang/lib/Basic/Targets/X86.cpp b/clang/lib/Basic/Targets/X86.cpp
index 46a551603eca2..e20e1f369a1a8 100644
--- a/clang/lib/Basic/Targets/X86.cpp
+++ b/clang/lib/Basic/Targets/X86.cpp
@@ -330,6 +330,8 @@ bool 
X86TargetInfo::handleTargetFeatures(std::vector &Features,
   HasAMXINT8 = true;
 } else if (Feature == "+amx-tile") {
   HasAMXTILE = true;
+} else if (Feature == "+avxifma") {
+  HasAVXIFMA = true;
 } else if (Feature == "+avxvnni") {
   HasAVXVNNI = true;
 } else if (Feature == "+serialize") {
@@ -774,6 +776,9 @@ void X86TargetInfo::getTargetDefines(const LangOptions 
&Opts,
 Builder.defineMacro("__AMXINT8__");
   if (HasAMXBF16)
 Builder.defineMacro("__AMXBF16__");
+  if (HasAVXIFMA)
+Builder.defineMacro("__AVXIFMA__");
+  Builder.defineMacro("__AVXIFMA_SUPPORTED__");
   if (HasAVXVNNI)
 Builder.defineMacro("__AVXVNNI__");
   if (HasSERIALIZE)
@@ -898,6 +903,7 @@ bool X86TargetInfo::isValidFeatureName(StringRef Name) 
const {
   .Case("avx512ifma", true)
   .Case("avx512vp2intersect", true)
   .Case("avxvnni", true)
+  .Case("avxifma", true)
   .Case("bmi", true)
   .Case("bmi2", true)
   .Case("cldemote", true)
@@ -973,6 +979,7 @@ bool X86TargetInfo::hasFeature(StringRef Feature)

[llvm-branch-commits] [clang] bf470fc - test

2022-09-05 Thread Freddy Ye via llvm-branch-commits

Author: Freddy Ye
Date: 2022-09-05T23:06:05+08:00
New Revision: bf470fc6e69fcea94026df3f9265c9ca444a901d

URL: 
https://github.com/llvm/llvm-project/commit/bf470fc6e69fcea94026df3f9265c9ca444a901d
DIFF: 
https://github.com/llvm/llvm-project/commit/bf470fc6e69fcea94026df3f9265c9ca444a901d.diff

LOG: test

Added: 


Modified: 
clang/test/Driver/x86-target-features.c

Removed: 




diff  --git a/clang/test/Driver/x86-target-features.c 
b/clang/test/Driver/x86-target-features.c
index a3eecd8bedfa..a0e1be24cd70 100644
--- a/clang/test/Driver/x86-target-features.c
+++ b/clang/test/Driver/x86-target-features.c
@@ -5,6 +5,7 @@
 // RUN: %clang --target=i386 -march=i386 -mno-fp-ret-in-387 %s -### 2>&1 | 
FileCheck -check-prefix=NO-X87 %s
 // X87: "-target-feature" "+x87"
 // NO-X87: "-target-feature" "-x87"
+// test
 
 // RUN: %clang --target=i386 -march=i386 -mmmx -m3dnow -m3dnowa %s -### 2>&1 | 
FileCheck -check-prefix=MMX %s
 // RUN: %clang --target=i386 -march=i386 -mno-mmx -mno-3dnow -mno-3dnowa %s 
-### 2>&1 | FileCheck -check-prefix=NO-MMX %s



___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits