aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2015-08-18 19:03:59 +0000
committerDimitry Andric <dim@FreeBSD.org>2015-08-18 19:03:59 +0000
commitb10d76f080849f2f726d545264ebd0f732478cdc (patch)
treec960e1a0197e941e7aa2df8210ab3603b2cb8a05 /contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h
parent45587483d885551020b7cf482d847dd5a0e0518e (diff)
Import r243925 from the upstream clang release_37 branch:
Reverting r239883 and r240720: ------------------------------------------------------------------------ r239883 | echristo | 2015-06-17 00:09:32 -0700 (Wed, 17 Jun 2015) | 16 lines Update the intel intrinsic headers to use the target attribute support. This involved removing the conditional inclusion and replacing them with target attributes matching the original conditional inclusion and checks. The testcase update removes the macro checks for each file and replaces them with usage of the __target__ attribute, e.g.: int __attribute__((__target__(("sse3")))) foo(int a) { _mm_mwait(0, 0); return 4; } This usage does require the enclosing function have the requisite __target__ attribute for inlining and code generation - also for any macro intrinsic uses in the enclosing function. There's no change for existing uses of the intrinsic headers. ------------------------------------------------------------------------ ------------------------------------------------------------------------ r240720 | silvas | 2015-06-25 16:22:11 -0700 (Thu, 25 Jun 2015) | 6 lines Remove `requires` for x86 CPU features. Ever since the target attributes change, we don't need to guard these headers with `requires`. Actually it's a bit worse, because if we do then they are included textually under the covers, causing declarations to appear in submodules they aren't supposed to be in. ------------------------------------------------------------------------ This reverts the changes to the intrinsics headers in trunk, which could result in some ports' configure scripts misdetecting SSE (and higher) support.
Notes
Notes: svn path=/projects/clang-trunk/; revision=286896
Diffstat (limited to 'contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h')
-rw-r--r--contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h b/contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h
index 8a69f7ffbf34..c946de286742 100644
--- a/contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h
+++ b/contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h
@@ -29,7 +29,7 @@
#define __AVX512DQINTRIN_H
/* Define the default attributes for the functions in this file. */
-#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512dq")))
+#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__))
static __inline__ __m512i __DEFAULT_FN_ATTRS
_mm512_mullo_epi64 (__m512i __A, __m512i __B) {