summaryrefslogtreecommitdiffstats
path: root/clang/test/Preprocessor/x86_target_features.c
diff options
context:
space:
mode:
authorBen Langmuir <ben.langmuir@intel.com>2013-09-19 13:22:04 +0000
committerBen Langmuir <ben.langmuir@intel.com>2013-09-19 13:22:04 +0000
commit58078d0103fa9cab73f5a3b79dbb97c9f92a097e (patch)
tree4d5ef407932a01cb970418bcfe328399a68a402d /clang/test/Preprocessor/x86_target_features.c
parenta54daa4640733fd23ab178b062a4d7efde3e1264 (diff)
downloadbcm5719-llvm-58078d0103fa9cab73f5a3b79dbb97c9f92a097e.tar.gz
bcm5719-llvm-58078d0103fa9cab73f5a3b79dbb97c9f92a097e.zip
Add C intrinsics for Intel SHA Extensions
Intrinsics added shaintrin.h, which is included from x86intrin.h if __SHA__ is enabled. SHA implies SSE2, which is needed for the __m128i type. Also add the -msha/-mno-sha option. llvm-svn: 190999
Diffstat (limited to 'clang/test/Preprocessor/x86_target_features.c')
-rw-r--r--clang/test/Preprocessor/x86_target_features.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/clang/test/Preprocessor/x86_target_features.c b/clang/test/Preprocessor/x86_target_features.c
index acffb18e4e0..0cbda296abc 100644
--- a/clang/test/Preprocessor/x86_target_features.c
+++ b/clang/test/Preprocessor/x86_target_features.c
@@ -186,3 +186,20 @@
// AESNOSSE2-NOT: #define __AES__ 1
// AESNOSSE2-NOT: #define __SSE2__ 1
// AESNOSSE2-NOT: #define __SSE3__ 1
+
+// RUN: %clang -target i386-unknown-unknown -march=pentiumpro -msha -x c -E -dM -o - %s | FileCheck --check-prefix=SHA %s
+
+// SHA: #define __SHA__ 1
+// SHA: #define __SSE2__ 1
+// SHA-NOT: #define __SSE3__ 1
+
+// run: %clang -target i386-unknown-unknown -march=pentiumpro -msha -mno-sha -x c -e -dm -o - %s | filecheck --check-prefix=SHANOSHA %s
+
+// SHANOSHA-NOT: #define __SHA__ 1
+// SHANOSHA-NOT: #define __SSE2__ 1
+
+// run: %clang -target i386-unknown-unknown -march=pentiumpro -msha -mno-sse2 -x c -e -dm -o - %s | filecheck --check-prefix=SHANOSSE2 %s
+
+// SHANOSSSE2-NOT: #define __SHA__ 1
+// SHANOSSSE2-NOT: #define __SSE2__ 1
+// SHANOSSSE2-NOT: #define __SSE3__ 1 \ No newline at end of file
OpenPOWER on IntegriCloud