aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Support/Host.cpp
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2013-05-03 10:20:08 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2013-05-03 10:20:08 +0000
commitb9548d8ee30f880a237ea46430478b95f2ef4772 (patch)
tree37f310d8656dcf7420ae7f9a0ac7c9b8bd4d2997 /lib/Support/Host.cpp
parent555e8f606f5c7d1c5e90355b6d3e1e2b0e87dd2b (diff)
downloadexternal_llvm-b9548d8ee30f880a237ea46430478b95f2ef4772.zip
external_llvm-b9548d8ee30f880a237ea46430478b95f2ef4772.tar.gz
external_llvm-b9548d8ee30f880a237ea46430478b95f2ef4772.tar.bz2
X86: Add target description for btver2; make autodetection logic aware of AVX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181005 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Support/Host.cpp')
-rw-r--r--lib/Support/Host.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/Support/Host.cpp b/lib/Support/Host.cpp
index 27c99c8..8657abc 100644
--- a/lib/Support/Host.cpp
+++ b/lib/Support/Host.cpp
@@ -355,10 +355,15 @@ std::string sys::getHostCPUName() {
case 20:
return "btver1";
case 21:
- if (Model <= 15)
- return "bdver1";
- else if (Model <= 31)
+ if (!HasAVX) // If the OS doesn't support AVX provide a sane fallback.
+ return "btver1";
+ if (Model > 15 && Model <= 31)
return "bdver2";
+ return "bdver1";
+ case 22:
+ if (!HasAVX) // If the OS doesn't support AVX provide a sane fallback.
+ return "btver1";
+ return "btver2";
default:
return "generic";
}