From fd93630cce9b9bce6b4d735e1277be2c7e3a7fbf Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Thu, 26 Apr 2012 07:31:30 +0000 Subject: [PATCH] Enable AVX/AVX2 for Sandy Bridge, Ivy Bridge, and Haswell CPUs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155624 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Basic/Targets.cpp | 6 ++---- test/Preprocessor/predefined-arch-macros.c | 12 ++++-------- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index dd2a89a18b..291eaeb05f 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -1642,18 +1642,16 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap &Features) const { case CK_Corei7AVX: case CK_CoreAVXi: setFeatureEnabled(Features, "mmx", true); - setFeatureEnabled(Features, "sse4", true); + setFeatureEnabled(Features, "avx", true); setFeatureEnabled(Features, "aes", true); - //setFeatureEnabled(Features, "avx", true); break; case CK_CoreAVX2: setFeatureEnabled(Features, "mmx", true); - setFeatureEnabled(Features, "sse4", true); + setFeatureEnabled(Features, "avx2", true); setFeatureEnabled(Features, "aes", true); setFeatureEnabled(Features, "lzcnt", true); setFeatureEnabled(Features, "bmi", true); setFeatureEnabled(Features, "bmi2", true); - //setFeatureEnabled(Features, "avx2", true); break; case CK_K6: case CK_WinChipC6: diff --git a/test/Preprocessor/predefined-arch-macros.c b/test/Preprocessor/predefined-arch-macros.c index b063f7fe08..019ad0db92 100644 --- a/test/Preprocessor/predefined-arch-macros.c +++ b/test/Preprocessor/predefined-arch-macros.c @@ -372,8 +372,7 @@ // RUN: %clang -march=corei7-avx -m32 -E -dM %s -o - 2>&1 \ // RUN: | FileCheck %s -check-prefix=CHECK_COREI7_AVX_M32 // CHECK_COREI7_AVX_M32: #define __AES__ 1 -// FIXME: AVX is not yet enabled with Clang. -// CHECK_COREI7_AVX_M32-NOT: #define __AVX__ 1 +// CHECK_COREI7_AVX_M32: #define __AVX__ 1 // CHECK_COREI7_AVX_M32: #define __MMX__ 1 // CHECK_COREI7_AVX_M32: #define __SSE2__ 1 // CHECK_COREI7_AVX_M32: #define __SSE3__ 1 @@ -390,8 +389,7 @@ // RUN: %clang -march=corei7-avx -m64 -E -dM %s -o - 2>&1 \ // RUN: | FileCheck %s -check-prefix=CHECK_COREI7_AVX_M64 // CHECK_COREI7_AVX_M64: #define __AES__ 1 -// FIXME: AVX is not yet enabled with Clang. -// CHECK_COREI7_AVX_M64-NOT: #define __AVX__ 1 +// CHECK_COREI7_AVX_M64: #define __AVX__ 1 // CHECK_COREI7_AVX_M64: #define __MMX__ 1 // CHECK_COREI7_AVX_M64: #define __SSE2_MATH__ 1 // CHECK_COREI7_AVX_M64: #define __SSE2__ 1 @@ -412,8 +410,7 @@ // RUN: %clang -march=core-avx-i -m32 -E -dM %s -o - 2>&1 \ // RUN: | FileCheck %s -check-prefix=CHECK_CORE_AVX_I_M32 // CHECK_CORE_AVX_I_M32: #define __AES__ 1 -// FIXME: AVX is not yet enabled with Clang. -// CHECK_CORE_AVX_I_M32-NOT: #define __AVX__ 1 +// CHECK_CORE_AVX_I_M32: #define __AVX__ 1 // CHECK_CORE_AVX_I_M32: #define __MMX__ 1 // CHECK_CORE_AVX_I_M32: #define __SSE2__ 1 // CHECK_CORE_AVX_I_M32: #define __SSE3__ 1 @@ -430,8 +427,7 @@ // RUN: %clang -march=core-avx-i -m64 -E -dM %s -o - 2>&1 \ // RUN: | FileCheck %s -check-prefix=CHECK_CORE_AVX_I_M64 // CHECK_CORE_AVX_I_M64: #define __AES__ 1 -// FIXME: AVX is not yet enabled with Clang. -// CHECK_CORE_AVX_I_M64-NOT: #define __AVX__ 1 +// CHECK_CORE_AVX_I_M64: #define __AVX__ 1 // CHECK_CORE_AVX_I_M64: #define __MMX__ 1 // CHECK_CORE_AVX_I_M64: #define __SSE2_MATH__ 1 // CHECK_CORE_AVX_I_M64: #define __SSE2__ 1 -- 2.50.1