diff options
| author | Chandler Carruth <chandlerc@gmail.com> | 2011-09-28 10:36:46 +0000 | 
|---|---|---|
| committer | Chandler Carruth <chandlerc@gmail.com> | 2011-09-28 10:36:46 +0000 | 
| commit | cd99bad4acc3f630f4efe12035f86dbc8a08bb57 (patch) | |
| tree | 77aefb5552c2fa03c21a9364a4ba419d39237be8 /clang/lib/Basic | |
| parent | e83c3d9d33e3b345255c34c80a5339729707b06d (diff) | |
| download | bcm5719-llvm-cd99bad4acc3f630f4efe12035f86dbc8a08bb57.tar.gz bcm5719-llvm-cd99bad4acc3f630f4efe12035f86dbc8a08bb57.zip | |
Generate tests for all of the x86 SIMD instruction feature set
predefines based on the output of GCC as well as the CPU predefines.
Invert tests for __AVX__, Clang's AVX feature is hard coded off still.
Switch Atom from 'SSE3' to 'SSSE3'. This matches GCC's behavior, Intel's
documentation, and ICC's documentation (such as I could dig up).
Switch Athlon and Geode to enable 3dnowa rather than just 3dnow and
nothing (resp.).
llvm-svn: 140692
Diffstat (limited to 'clang/lib/Basic')
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 10 | 
1 files changed, 6 insertions, 4 deletions
| diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 244205400c6..3ae21d4c327 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -1471,7 +1471,6 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap<bool> &Features) const {    case CK_Pentium:    case CK_i686:    case CK_PentiumPro: -  case CK_Geode:      break;    case CK_PentiumMMX:    case CK_Pentium2: @@ -1506,7 +1505,7 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap<bool> &Features) const {      break;    case CK_Atom:      setFeatureEnabled(Features, "mmx", true); -    setFeatureEnabled(Features, "sse3", true); +    setFeatureEnabled(Features, "ssse3", true);      break;    case CK_Corei7:      setFeatureEnabled(Features, "mmx", true); @@ -1526,12 +1525,15 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap<bool> &Features) const {      break;    case CK_K6_2:    case CK_K6_3: -  case CK_Athlon: -  case CK_AthlonThunderbird:    case CK_WinChip2:    case CK_C3:      setFeatureEnabled(Features, "3dnow", true);      break; +  case CK_Athlon: +  case CK_AthlonThunderbird: +  case CK_Geode: +    setFeatureEnabled(Features, "3dnowa", true); +    break;    case CK_Athlon4:    case CK_AthlonXP:    case CK_AthlonMP: | 

