summaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
authorkyukhin <kyukhin@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-02 15:25:26 +0000
committerkyukhin <kyukhin@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-02 15:25:26 +0000
commit767110dd1458b06ba1f2b5d60cbcfaea37e0e577 (patch)
treee1a05f69364724a4e944778896f96fba5010152a /libgcc
parent2f544bdf2d576b011cf84e37d7c19f87b523c8d7 (diff)
downloadgcc-767110dd1458b06ba1f2b5d60cbcfaea37e0e577.tar.gz
AVX-512. Add missing features to cpuinfo.c
gcc/ * config/i386/i386.c (processor_features): Add F_AVX512VBMI, F_AVX512IFMA. (isa_names_table): Handle F_AVX512VBMI and F_AVX512IFMA. libgcc/ * config/i386/cpuinfo.c (processor_features): Add FEATURE_AVX512VBMI and FEATURE_AVX512VBMI. testsuite/ * gcc.target/i386/builtin_target.c: Handle "avx512ifma" and "avx512vbmi". git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@228399 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgcc')
-rw-r--r--libgcc/ChangeLog5
-rw-r--r--libgcc/config/i386/cpuinfo.c8
2 files changed, 12 insertions, 1 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index a2d39c07dfa..e534c6db959 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,8 @@
+2015-10-02 Kirill Yukhin <kirill.yukhin@intel.com>
+
+ * config/i386/cpuinfo.c (processor_features): Add
+ FEATURE_AVX512VBMI and FEATURE_AVX512VBMI.
+
2015-09-28 Joseph Myers <joseph@codesourcery.com>
* soft-fp/adddf3.c: Update from glibc.
diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c
index ddb49e3ad9a..40ed84cf6cb 100644
--- a/libgcc/config/i386/cpuinfo.c
+++ b/libgcc/config/i386/cpuinfo.c
@@ -110,7 +110,9 @@ enum processor_features
FEATURE_AVX512DQ,
FEATURE_AVX512CD,
FEATURE_AVX512ER,
- FEATURE_AVX512PF
+ FEATURE_AVX512PF,
+ FEATURE_AVX512VBMI,
+ FEATURE_AVX512IFMA
};
struct __processor_model
@@ -336,6 +338,10 @@ get_available_features (unsigned int ecx, unsigned int edx,
features |= (1 << FEATURE_AVX512PF);
if (ebx & bit_AVX512ER)
features |= (1 << FEATURE_AVX512ER);
+ if (ebx & bit_AVX512IFMA)
+ features |= (1 << FEATURE_AVX512IFMA);
+ if (ecx & bit_AVX512VBMI)
+ features |= (1 << FEATURE_AVX512VBMI);
}
unsigned int ext_level;