i386.c (processor_target_table): Add skylake_cost for skylake-avx512.
authorUros Bizjak <uros@gcc.gnu.org>
Sun, 26 Nov 2017 16:11:29 +0000 (17:11 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Sun, 26 Nov 2017 16:11:29 +0000 (17:11 +0100)
commitc234d8319b4544f73a66e1e020d6db00e752cbcd
tree99eb117398765cc61216d8cdab4dbe665c961589
parent8c7dbea9f193ae21d193453d7a9eb6d2089618d6
i386.c (processor_target_table): Add skylake_cost for skylake-avx512.

* config/i386/i386.c (processor_target_table): Add skylake_cost for
skylake-avx512.
* config/i386/x86-tune-costs.h (skylake_memcpy, skylake_memset,
skylake_cost): New.

* config/i386/driver-i386.c (host_detect_local_cpu):
Detect skylake-avx512.

* config.gcc: Add -march=cannonlake.
* config/i386/driver-i386.c (host_detect_local_cpu): Detect cannonlake.
* config/i386/i386-c.c (ix86_target_macros_internal): Handle cannonlake.
* config/i386/i386.c (processor_costs): Add m_CANNONLAKE.
(PTA_CANNONLAKE): New.
(processor_target_table): Add cannonlake.
(ix86_option_override_internal): Ditto.
(fold_builtin_cpu): Ditto.
(get_builtin_code_for_version): Handle cannonlake.
(M_INTEL_COREI7_CANNONLAKE): New.
* config/i386/i386.h (TARGET_CANNONLAKE, PROCESSOR_CANNONLAKE): New.
* doc/invoke.texi: Add -march=cannonlake.

gcc/testsuite/

* gcc.target/i386/funcspec-56.inc: Handle new march.
* g++.dg/ext/mv16.C: Ditto.

libgcc/

* config/i386/cpuinfo.c (get_intel_cpu): Handle cannonlake.
* config/i386/cpuinfo.h (processor_subtypes): Add
INTEL_COREI7_CANNONLAKE.

From-SVN: r255155
14 files changed:
gcc/ChangeLog
gcc/config.gcc
gcc/config/i386/driver-i386.c
gcc/config/i386/i386-c.c
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/config/i386/x86-tune-costs.h
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ext/mv16.C
gcc/testsuite/gcc.target/i386/funcspec-56.inc
libgcc/ChangeLog
libgcc/config/i386/cpuinfo.c
libgcc/config/i386/cpuinfo.h