Reapply 272328 and 272329 as a single patch.

[cpu-detection] [amdfam10] Return barcelona, and amdfam10 for all other
subtypes. Address Bug 28067.

Along with the refactoring of Host.cpp, getHostCPUName() was modified to
return more precise types for CPUs in amdfam10.
However, callers of getHostCPUName() do string matching on type, so this
cannot be modified.
Currently there is support in the x86 backend for barcelona.
For all other subtypes the assumed return value is amdfam10.

Fix: getHostCPUName() returns barcelona subtype and amdfam10 for all
others. This can be extended further when support for the other subtypes
is added.

Differential revision: http://reviews.llvm.org/D21193

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272333 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Alina Sbirlea 2016-06-09 23:04:15 +00:00
parent 3bd97ac17f
commit 337c62e99d

View File

@ -869,16 +869,9 @@ StringRef sys::getHostCPUName() {
return "athlon";
}
case AMDFAM10H:
switch (Subtype) {
case AMDFAM10H_BARCELONA:
return "amdfam10-barcelona";
case AMDFAM10H_SHANGHAI:
return "amdfam10-shanghai";
case AMDFAM10H_ISTANBUL:
return "amdfam10-istanbul";
default:
return "amdfam10";
}
if(Subtype == AMDFAM10H_BARCELONA)
return "barcelona";
return "amdfam10";
case AMDFAM14H:
return "btver1";
case AMDFAM15H: