r188902 - Don't disable SSE4A when disabling AVX.
Rafael Espindola
rafael.espindola at gmail.com
Wed Aug 21 06:28:02 PDT 2013
Author: rafael
Date: Wed Aug 21 08:28:02 2013
New Revision: 188902
URL: http://llvm.org/viewvc/llvm-project?rev=188902&view=rev
Log:
Don't disable SSE4A when disabling AVX.
Thanks for Craig Topper for noticing it.
Modified:
cfe/trunk/lib/Basic/Targets.cpp
cfe/trunk/test/Preprocessor/x86_target_features.c
Modified: cfe/trunk/lib/Basic/Targets.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?rev=188902&r1=188901&r2=188902&view=diff
==============================================================================
--- cfe/trunk/lib/Basic/Targets.cpp (original)
+++ cfe/trunk/lib/Basic/Targets.cpp Wed Aug 21 08:28:02 2013
@@ -2120,7 +2120,7 @@ void X86TargetInfo::setSSELevel(llvm::St
Features["popcnt"] = Features["sse42"] = false;
case AVX:
Features["fma"] = Features["avx"] = false;
- setXOPLevel(Features, SSE4A, false);
+ setXOPLevel(Features, FMA4, false);
case AVX2:
Features["avx2"] = false;
case AVX512F:
Modified: cfe/trunk/test/Preprocessor/x86_target_features.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Preprocessor/x86_target_features.c?rev=188902&r1=188901&r2=188902&view=diff
==============================================================================
--- cfe/trunk/test/Preprocessor/x86_target_features.c (original)
+++ cfe/trunk/test/Preprocessor/x86_target_features.c Wed Aug 21 08:28:02 2013
@@ -42,3 +42,16 @@
// AVX: #define __SSE_MATH__ 1
// AVX: #define __SSE__ 1
// AVX: #define __SSSE3__ 1
+
+
+// RUN: %clang -target i386-unknown-unknown -march=pentium-m -mxop -mno-avx -x c -E -dM -o - %s | FileCheck --check-prefix=SSE4A %s
+
+// SSE4A: #define __SSE2_MATH__ 1
+// SSE4A: #define __SSE2__ 1
+// SSE4A: #define __SSE3__ 1
+// SSE4A: #define __SSE4A__ 1
+// SSE4A: #define __SSE4_1__ 1
+// SSE4A: #define __SSE4_2__ 1
+// SSE4A: #define __SSE_MATH__ 1
+// SSE4A: #define __SSE__ 1
+// SSE4A: #define __SSSE3__ 1
More information about the cfe-commits
mailing list