diff options
author | Zhang Xianyi <traits.zhang@gmail.com> | 2015-05-13 16:16:30 -0500 |
---|---|---|
committer | Zhang Xianyi <traits.zhang@gmail.com> | 2015-05-13 16:16:30 -0500 |
commit | 51ff17d46e0584a414e4ef97600f348877410adc (patch) | |
tree | 5b22c8524d8d1a3e855575a4896751ca5e6f02b6 /cpuid_x86.c | |
parent | 905534942a893a390fe27788323f1ea02a32bd6d (diff) | |
download | openblas-51ff17d46e0584a414e4ef97600f348877410adc.tar.gz openblas-51ff17d46e0584a414e4ef97600f348877410adc.tar.bz2 openblas-51ff17d46e0584a414e4ef97600f348877410adc.zip |
Add AMD Excavator target.
Diffstat (limited to 'cpuid_x86.c')
-rw-r--r-- | cpuid_x86.c | 41 |
1 files changed, 32 insertions, 9 deletions
diff --git a/cpuid_x86.c b/cpuid_x86.c index aece9d871..4f97cfb5a 100644 --- a/cpuid_x86.c +++ b/cpuid_x86.c @@ -1198,11 +1198,20 @@ int get_cpuname(void){ else return CPUTYPE_BARCELONA; //OS don't support AVX. case 0: - if(support_avx()) - return CPUTYPE_STEAMROLLER; - else - return CPUTYPE_BARCELONA; //OS don't support AVX. - + switch(exmodel){ + case 3: + if(support_avx()) + return CPUTYPE_STEAMROLLER; + else + return CPUTYPE_BARCELONA; //OS don't support AVX. + + case 6: + if(support_avx()) + return CPUTYPE_EXCAVATOR; + else + return CPUTYPE_BARCELONA; //OS don't support AVX. + } + break; } break; case 5: @@ -1332,6 +1341,7 @@ static char *cpuname[] = { "PILEDRIVER", "HASWELL", "STEAMROLLER", + "EXCAVATOR", }; static char *lowercpuname[] = { @@ -1384,6 +1394,7 @@ static char *lowercpuname[] = { "piledriver", "haswell", "steamroller", + "excavator", }; static char *corename[] = { @@ -1413,6 +1424,7 @@ static char *corename[] = { "PILEDRIVER", "HASWELL", "STEAMROLLER", + "EXCAVATOR", }; static char *corename_lower[] = { @@ -1442,6 +1454,7 @@ static char *corename_lower[] = { "piledriver", "haswell", "steamroller", + "excavator", }; @@ -1644,10 +1657,20 @@ int get_coretype(void){ return CORE_BARCELONA; //OS don't support AVX. case 0: - if(support_avx()) - return CORE_STEAMROLLER; - else - return CORE_BARCELONA; //OS don't support AVX. + switch(exmodel){ + case 3: + if(support_avx()) + return CORE_STEAMROLLER; + else + return CORE_BARCELONA; //OS don't support AVX. + + case 6: + if(support_avx()) + return CORE_EXCAVATOR; + else + return CORE_BARCELONA; //OS don't support AVX. + } + break; } |