diff options
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 15 | 
1 files changed, 15 insertions, 0 deletions
| diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index df8df2128d2..9d78bbebac5 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -1835,6 +1835,7 @@ class X86TargetInfo : public TargetInfo {      /// Bobcat architecture processors.      //@{      CK_BTVER1, +    CK_BTVER2,      //@}      /// \name Bulldozer @@ -1959,6 +1960,7 @@ public:        .Case("opteron-sse3", CK_OpteronSSE3)        .Case("amdfam10", CK_AMDFAM10)        .Case("btver1", CK_BTVER1) +      .Case("btver2", CK_BTVER2)        .Case("bdver1", CK_BDVER1)        .Case("bdver2", CK_BDVER2)        .Case("x86-64", CK_x86_64) @@ -2024,6 +2026,7 @@ public:      case CK_OpteronSSE3:      case CK_AMDFAM10:      case CK_BTVER1: +    case CK_BTVER2:      case CK_BDVER1:      case CK_BDVER2:      case CK_x86_64: @@ -2193,6 +2196,15 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap<bool> &Features) const {      setFeatureEnabled(Features, "lzcnt", true);      setFeatureEnabled(Features, "popcnt", true);      break; +  case CK_BTVER2: +    setFeatureEnabled(Features, "avx", true); +    setFeatureEnabled(Features, "sse4a", true); +    setFeatureEnabled(Features, "lzcnt", true); +    setFeatureEnabled(Features, "aes", true); +    setFeatureEnabled(Features, "pclmul", true); +    setFeatureEnabled(Features, "bmi", true); +    setFeatureEnabled(Features, "f16c", true); +    break;    case CK_BDVER1:      setFeatureEnabled(Features, "xop", true);      setFeatureEnabled(Features, "lzcnt", true); @@ -2611,6 +2623,9 @@ void X86TargetInfo::getTargetDefines(const LangOptions &Opts,    case CK_BTVER1:      defineCPUMacros(Builder, "btver1");      break; +  case CK_BTVER2: +    defineCPUMacros(Builder, "btver2"); +    break;    case CK_BDVER1:      defineCPUMacros(Builder, "bdver1");      break; | 

