diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2012-11-17 01:43:10 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2012-11-17 01:43:10 +0000 |
commit | faf3538605ef3c5ba475639424f6f94ec4aa5179 (patch) | |
tree | 95ae17e6a2d60de4359951b5db47262333e663d4 /lib/Basic | |
parent | 612db2aa100453710ce9eb9032268ae30b902d4e (diff) |
Add missing features for misc x86 CPUs to CPU feature translation. Patch by Jung-uk Kim.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168239 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Basic')
-rw-r--r-- | lib/Basic/Targets.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index e8afa8201c..305dc7c645 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -1889,6 +1889,7 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap<bool> &Features) const { setFeatureEnabled(Features, "aes", true); setFeatureEnabled(Features, "pclmul", true); setFeatureEnabled(Features, "rdrnd", true); + setFeatureEnabled(Features, "f16c", true); break; case CK_CoreAVX2: setFeatureEnabled(Features, "avx2", true); @@ -1896,6 +1897,7 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap<bool> &Features) const { setFeatureEnabled(Features, "pclmul", true); setFeatureEnabled(Features, "lzcnt", true); setFeatureEnabled(Features, "rdrnd", true); + setFeatureEnabled(Features, "f16c", true); setFeatureEnabled(Features, "bmi", true); setFeatureEnabled(Features, "bmi2", true); setFeatureEnabled(Features, "rtm", true); @@ -1939,17 +1941,28 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap<bool> &Features) const { setFeatureEnabled(Features, "sse3", true); setFeatureEnabled(Features, "sse4a", true); setFeatureEnabled(Features, "3dnowa", true); + setFeatureEnabled(Features, "lzcnt", true); + setFeatureEnabled(Features, "popcnt", true); break; case CK_BTVER1: setFeatureEnabled(Features, "ssse3", true); setFeatureEnabled(Features, "sse4a", true); + setFeatureEnabled(Features, "lzcnt", true); + setFeatureEnabled(Features, "popcnt", true); break; case CK_BDVER1: + setFeatureEnabled(Features, "xop", true); + setFeatureEnabled(Features, "lzcnt", true); + setFeatureEnabled(Features, "aes", true); + setFeatureEnabled(Features, "pclmul", true); case CK_BDVER2: - setFeatureEnabled(Features, "avx", true); setFeatureEnabled(Features, "xop", true); + setFeatureEnabled(Features, "lzcnt", true); setFeatureEnabled(Features, "aes", true); setFeatureEnabled(Features, "pclmul", true); + setFeatureEnabled(Features, "bmi", true); + setFeatureEnabled(Features, "fma", true); + setFeatureEnabled(Features, "f16c", true); break; case CK_C3_2: setFeatureEnabled(Features, "sse", true); |