On Fri, Dec 1, 2023 at 3:22 AM Haochen Jiang <haochen.ji...@intel.com> wrote: > > Since Knight Landing and Knight Mill microarchitectures are EOL, we > would like to remove its support in GCC 15. In GCC 14, we will first > emit a warning for the usage.
I think it's better to keep supporting -mtune/arch=knl without diagnostics but simply not enable the ISAs we don't support. The better question is what to do about KNL specific intrinsics headers / intrinsics? Will we simply remove those? Richard. > gcc/ChangeLog: > > * config/i386/driver-i386.cc (host_detect_local_cpu): > Do not append "-mno-" for Xeon Phi ISAs. > * config/i386/i386-options.cc (ix86_option_override_internal): > Emit a warning for KNL/KNM targets. > * config/i386/i386.opt: Emit a warning for Xeon Phi ISAs. > > gcc/testsuite/ChangeLog: > > * g++.dg/other/i386-2.C: Adjust testcases. > * g++.dg/other/i386-3.C: Ditto. > * g++.dg/pr80481.C: Ditto. > * gcc.dg/pr71279.c: Ditto. > * gcc.target/i386/avx5124fmadd-v4fmaddps-1.c: Ditto. > * gcc.target/i386/avx5124fmadd-v4fmaddps-2.c: Ditto. > * gcc.target/i386/avx5124fmadd-v4fmaddss-1.c: Ditto. > * gcc.target/i386/avx5124fmadd-v4fnmaddps-1.c: Ditto. > * gcc.target/i386/avx5124fmadd-v4fnmaddps-2.c: Ditto. > * gcc.target/i386/avx5124fmadd-v4fnmaddss-1.c: Ditto. > * gcc.target/i386/avx5124vnniw-vp4dpwssd-1.c: Ditto. > * gcc.target/i386/avx5124vnniw-vp4dpwssd-2.c: Ditto. > * gcc.target/i386/avx5124vnniw-vp4dpwssds-1.c: Ditto. > * gcc.target/i386/avx5124vnniw-vp4dpwssds-2.c: Ditto. > * gcc.target/i386/avx512er-vexp2pd-1.c: Ditto. > * gcc.target/i386/avx512er-vexp2pd-2.c: Ditto. > * gcc.target/i386/avx512er-vexp2ps-1.c: Ditto. > * gcc.target/i386/avx512er-vexp2ps-2.c: Ditto. > * gcc.target/i386/avx512er-vrcp28pd-1.c: Ditto. > * gcc.target/i386/avx512er-vrcp28pd-2.c: Ditto. > * gcc.target/i386/avx512er-vrcp28ps-1.c: Ditto. > * gcc.target/i386/avx512er-vrcp28ps-2.c: Ditto. > * gcc.target/i386/avx512er-vrcp28ps-3.c: Ditto. > * gcc.target/i386/avx512er-vrcp28ps-4.c: Ditto. > * gcc.target/i386/avx512er-vrcp28sd-1.c: Ditto. > * gcc.target/i386/avx512er-vrcp28sd-2.c: Ditto. > * gcc.target/i386/avx512er-vrcp28ss-1.c: Ditto. > * gcc.target/i386/avx512er-vrcp28ss-2.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28pd-1.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28pd-2.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28ps-1.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28ps-2.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28ps-3.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28ps-4.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28ps-5.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28ps-6.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28sd-1.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28sd-2.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28ss-1.c: Ditto. > * gcc.target/i386/avx512er-vrsqrt28ss-2.c: Ditto. > * gcc.target/i386/avx512f-gather-1.c: Ditto. > * gcc.target/i386/avx512f-gather-2.c: Ditto. > * gcc.target/i386/avx512f-gather-3.c: Ditto. > * gcc.target/i386/avx512f-gather-4.c: Ditto. > * gcc.target/i386/avx512f-gather-5.c: Ditto. > * gcc.target/i386/avx512f-i32gatherd512-1.c: Ditto. > * gcc.target/i386/avx512f-i32gatherd512-2.c: Ditto. > * gcc.target/i386/avx512f-i32gatherpd512-1.c: Ditto. > * gcc.target/i386/avx512f-i32gatherpd512-2.c: Ditto. > * gcc.target/i386/avx512f-i32gatherps512-1.c: Ditto. > * gcc.target/i386/avx512f-vect-perm-1.c: Ditto. > * gcc.target/i386/avx512f-vect-perm-2.c: Ditto. > * gcc.target/i386/avx512pf-vgatherpf0dpd-1.c: Ditto. > * gcc.target/i386/avx512pf-vgatherpf0dps-1.c: Ditto. > * gcc.target/i386/avx512pf-vgatherpf0qpd-1.c: Ditto. > * gcc.target/i386/avx512pf-vgatherpf0qps-1.c: Ditto. > * gcc.target/i386/avx512pf-vgatherpf1dpd-1.c: Ditto. > * gcc.target/i386/avx512pf-vgatherpf1dps-1.c: Ditto. > * gcc.target/i386/avx512pf-vgatherpf1qpd-1.c: Ditto. > * gcc.target/i386/avx512pf-vgatherpf1qps-1.c: Ditto. > * gcc.target/i386/avx512pf-vscatterpf0dpd-1.c: Ditto. > * gcc.target/i386/avx512pf-vscatterpf0dps-1.c: Ditto. > * gcc.target/i386/avx512pf-vscatterpf0qpd-1.c: Ditto. > * gcc.target/i386/avx512pf-vscatterpf0qps-1.c: Ditto. > * gcc.target/i386/avx512pf-vscatterpf1dpd-1.c: Ditto. > * gcc.target/i386/avx512pf-vscatterpf1dps-1.c: Ditto. > * gcc.target/i386/avx512pf-vscatterpf1qpd-1.c: Ditto. > * gcc.target/i386/avx512pf-vscatterpf1qps-1.c: Ditto. > * gcc.target/i386/funcspec-56.inc: Ditto. > * gcc.target/i386/pr101395-2.c: Ditto. > * gcc.target/i386/pr101395-3.c: Ditto. > * gcc.target/i386/pr103404.c: Ditto. > * gcc.target/i386/pr104448.c: Ditto. > * gcc.target/i386/pr107934.c: Ditto. > * gcc.target/i386/pr57275.c: Ditto. > * gcc.target/i386/pr64387.c: Ditto. > * gcc.target/i386/pr70728.c: Ditto. > * gcc.target/i386/pr71346.c: Ditto. > * gcc.target/i386/pr82941-2.c: Ditto. > * gcc.target/i386/pr82942-1.c: Ditto. > * gcc.target/i386/pr82942-2.c: Ditto. > * gcc.target/i386/pr82990-1.c: Ditto. > * gcc.target/i386/pr82990-3.c: Ditto. > * gcc.target/i386/pr82990-4.c: Ditto. > * gcc.target/i386/pr82990-6.c: Ditto. > * gcc.target/i386/pr88713-3.c: Ditto. > * gcc.target/i386/pr89523-5.c: Ditto. > * gcc.target/i386/pr89523-6.c: Ditto. > * gcc.target/i386/pr91033.c: Ditto. > * gcc.target/i386/pr94561.c: Ditto. > * gcc.target/i386/prefetchwt1-1.c: Ditto. > * gcc.target/i386/sse-12.c: Ditto. > * gcc.target/i386/sse-13.c: Ditto. > * gcc.target/i386/sse-14.c: Ditto. > * gcc.target/i386/sse-26.c: Ditto. > * gcc.target/i386/pr69471-3.c: Removed. > --- > gcc/config/i386/driver-i386.cc | 9 ++++-- > gcc/config/i386/i386-options.cc | 25 +++++++++++++++++ > gcc/config/i386/i386.opt | 10 +++---- > gcc/testsuite/g++.dg/other/i386-2.C | 5 ++++ > gcc/testsuite/g++.dg/other/i386-3.C | 5 ++++ > gcc/testsuite/g++.dg/pr80481.C | 2 +- > gcc/testsuite/gcc.dg/pr71279.c | 2 +- > .../i386/avx5124fmadd-v4fmaddps-1.c | 1 + > .../i386/avx5124fmadd-v4fmaddps-2.c | 1 + > .../i386/avx5124fmadd-v4fmaddss-1.c | 1 + > .../i386/avx5124fmadd-v4fnmaddps-1.c | 1 + > .../i386/avx5124fmadd-v4fnmaddps-2.c | 1 + > .../i386/avx5124fmadd-v4fnmaddss-1.c | 1 + > .../i386/avx5124vnniw-vp4dpwssd-1.c | 1 + > .../i386/avx5124vnniw-vp4dpwssd-2.c | 1 + > .../i386/avx5124vnniw-vp4dpwssds-1.c | 1 + > .../i386/avx5124vnniw-vp4dpwssds-2.c | 1 + > .../gcc.target/i386/avx512er-vexp2pd-1.c | 1 + > .../gcc.target/i386/avx512er-vexp2pd-2.c | 1 + > .../gcc.target/i386/avx512er-vexp2ps-1.c | 1 + > .../gcc.target/i386/avx512er-vexp2ps-2.c | 1 + > .../gcc.target/i386/avx512er-vrcp28pd-1.c | 1 + > .../gcc.target/i386/avx512er-vrcp28pd-2.c | 1 + > .../gcc.target/i386/avx512er-vrcp28ps-1.c | 1 + > .../gcc.target/i386/avx512er-vrcp28ps-2.c | 1 + > .../gcc.target/i386/avx512er-vrcp28ps-3.c | 1 + > .../gcc.target/i386/avx512er-vrcp28ps-4.c | 1 + > .../gcc.target/i386/avx512er-vrcp28sd-1.c | 1 + > .../gcc.target/i386/avx512er-vrcp28sd-2.c | 1 + > .../gcc.target/i386/avx512er-vrcp28ss-1.c | 1 + > .../gcc.target/i386/avx512er-vrcp28ss-2.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28pd-1.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28pd-2.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28ps-1.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28ps-2.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28ps-3.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28ps-4.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28ps-5.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28ps-6.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28sd-1.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28sd-2.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28ss-1.c | 1 + > .../gcc.target/i386/avx512er-vrsqrt28ss-2.c | 1 + > .../gcc.target/i386/avx512f-gather-1.c | 2 +- > .../gcc.target/i386/avx512f-gather-2.c | 2 +- > .../gcc.target/i386/avx512f-gather-3.c | 2 +- > .../gcc.target/i386/avx512f-gather-4.c | 2 +- > .../gcc.target/i386/avx512f-gather-5.c | 2 +- > .../gcc.target/i386/avx512f-i32gatherd512-1.c | 2 +- > .../gcc.target/i386/avx512f-i32gatherd512-2.c | 2 +- > .../i386/avx512f-i32gatherpd512-1.c | 2 +- > .../i386/avx512f-i32gatherpd512-2.c | 2 +- > .../i386/avx512f-i32gatherps512-1.c | 2 +- > .../gcc.target/i386/avx512f-vect-perm-1.c | 28 +++++++++---------- > .../gcc.target/i386/avx512f-vect-perm-2.c | 2 +- > .../i386/avx512pf-vgatherpf0dpd-1.c | 1 + > .../i386/avx512pf-vgatherpf0dps-1.c | 1 + > .../i386/avx512pf-vgatherpf0qpd-1.c | 1 + > .../i386/avx512pf-vgatherpf0qps-1.c | 1 + > .../i386/avx512pf-vgatherpf1dpd-1.c | 1 + > .../i386/avx512pf-vgatherpf1dps-1.c | 1 + > .../i386/avx512pf-vgatherpf1qpd-1.c | 1 + > .../i386/avx512pf-vgatherpf1qps-1.c | 1 + > .../i386/avx512pf-vscatterpf0dpd-1.c | 1 + > .../i386/avx512pf-vscatterpf0dps-1.c | 1 + > .../i386/avx512pf-vscatterpf0qpd-1.c | 1 + > .../i386/avx512pf-vscatterpf0qps-1.c | 1 + > .../i386/avx512pf-vscatterpf1dpd-1.c | 1 + > .../i386/avx512pf-vscatterpf1dps-1.c | 1 + > .../i386/avx512pf-vscatterpf1qpd-1.c | 1 + > .../i386/avx512pf-vscatterpf1qps-1.c | 1 + > gcc/testsuite/gcc.target/i386/funcspec-56.inc | 12 -------- > gcc/testsuite/gcc.target/i386/pr103404.c | 2 +- > gcc/testsuite/gcc.target/i386/pr104448.c | 1 + > gcc/testsuite/gcc.target/i386/pr107934.c | 2 +- > gcc/testsuite/gcc.target/i386/pr64387.c | 2 +- > gcc/testsuite/gcc.target/i386/pr69471-3.c | 11 -------- > gcc/testsuite/gcc.target/i386/pr70728.c | 2 +- > gcc/testsuite/gcc.target/i386/pr71346.c | 2 +- > gcc/testsuite/gcc.target/i386/pr82941-2.c | 1 + > gcc/testsuite/gcc.target/i386/pr82942-1.c | 2 +- > gcc/testsuite/gcc.target/i386/pr82942-2.c | 2 ++ > gcc/testsuite/gcc.target/i386/pr82990-1.c | 1 + > gcc/testsuite/gcc.target/i386/pr82990-3.c | 1 + > gcc/testsuite/gcc.target/i386/pr82990-4.c | 2 +- > gcc/testsuite/gcc.target/i386/pr82990-6.c | 1 + > gcc/testsuite/gcc.target/i386/pr88713-3.c | 2 +- > gcc/testsuite/gcc.target/i386/pr89523-5.c | 1 + > gcc/testsuite/gcc.target/i386/pr89523-6.c | 1 + > gcc/testsuite/gcc.target/i386/pr91033.c | 1 + > gcc/testsuite/gcc.target/i386/pr94561.c | 2 +- > gcc/testsuite/gcc.target/i386/prefetchwt1-1.c | 1 + > gcc/testsuite/gcc.target/i386/sse-12.c | 5 ++++ > gcc/testsuite/gcc.target/i386/sse-13.c | 5 ++++ > gcc/testsuite/gcc.target/i386/sse-14.c | 5 ++++ > gcc/testsuite/gcc.target/i386/sse-26.c | 1 + > 96 files changed, 162 insertions(+), 66 deletions(-) > delete mode 100644 gcc/testsuite/gcc.target/i386/pr69471-3.c > > diff --git a/gcc/config/i386/driver-i386.cc b/gcc/config/i386/driver-i386.cc > index 204600e128a..0cfb2884d65 100644 > --- a/gcc/config/i386/driver-i386.cc > +++ b/gcc/config/i386/driver-i386.cc > @@ -897,8 +897,13 @@ const char *host_detect_local_cpu (int argc, const char > **argv) > } > /* Never push -mno-avx10.1-{256,512} under -march=native to > avoid unnecessary warnings when building librarys. */ > - else if ((isa_names_table[i].feature != FEATURE_AVX10_1_256) > - && (isa_names_table[i].feature != FEATURE_AVX10_1_512) > + else if (isa_names_table[i].feature != FEATURE_AVX10_1_256 > + && isa_names_table[i].feature != FEATURE_AVX10_1_512 > + && isa_names_table[i].feature != FEATURE_AVX512PF > + && isa_names_table[i].feature != FEATURE_AVX512ER > + && isa_names_table[i].feature != FEATURE_AVX5124FMAPS > + && isa_names_table[i].feature != FEATURE_AVX5124VNNIW > + && isa_names_table[i].feature != FEATURE_PREFETCHWT1 > && check_avx512_features (cpu_model, cpu_features2, > isa_names_table[i].feature)) > options = concat (options, neg_option, > diff --git a/gcc/config/i386/i386-options.cc b/gcc/config/i386/i386-options.cc > index fb8638a3525..76a2127ea23 100644 > --- a/gcc/config/i386/i386-options.cc > +++ b/gcc/config/i386/i386-options.cc > @@ -2098,6 +2098,18 @@ ix86_option_override_internal (bool main_args_p, > : G_("%<target(\"tune=x86-64\")%> is deprecated; use " > "%<target(\"tune=k8\")%> or > %<target(\"tune=generic\")%>" > " instead as appropriate")); > + else if (!strcmp (opts->x_ix86_tune_string, "knl")) > + warning (OPT_Wdeprecated, > + main_args_p > + ? G_("%<-mtune=knl%> support will be removed in GCC 15") > + : G_("%<target(\"tune=knl\")%> support will be removed in " > + "GCC 15")); > + else if (!strcmp (opts->x_ix86_tune_string, "knm")) > + warning (OPT_Wdeprecated, > + main_args_p > + ? G_("%<-mtune=knm%> support will be removed in GCC 15") > + : G_("%<target(\"tune=knm\")%> support will be removed in " > + "GCC 15")); > } > else > { > @@ -2298,6 +2310,19 @@ ix86_option_override_internal (bool main_args_p, > return false; > } > > + if (!strcmp (opts->x_ix86_arch_string, "knl")) > + warning (OPT_Wdeprecated, > + main_args_p > + ? G_("%<-march=knl%> support will be removed in GCC 15") > + : G_("%<target(\"arch=knl\")%> support will be removed in " > + "GCC 15")); > + else if (!strcmp (opts->x_ix86_arch_string, "knm")) > + warning (OPT_Wdeprecated, > + main_args_p > + ? G_("%<-march=knm%> support will be removed in GCC 15") > + : G_("%<target(\"arch=knm\")%> support will be removed in " > + "GCC 15")); > + > ix86_schedule = processor_alias_table[i].schedule; > ix86_arch = processor_alias_table[i].processor; > > diff --git a/gcc/config/i386/i386.opt b/gcc/config/i386/i386.opt > index b2edfac0b2a..f0199585f9c 100644 > --- a/gcc/config/i386/i386.opt > +++ b/gcc/config/i386/i386.opt > @@ -738,11 +738,11 @@ Target Mask(ISA_AVX512F) Var(ix86_isa_flags) Save > Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F > built-in functions and code generation. > > mavx512pf > -Target Mask(ISA_AVX512PF) Var(ix86_isa_flags) Save > +Target Mask(ISA_AVX512PF) Var(ix86_isa_flags) Save Warn(AVX512PF support > will be removed in GCC 15) > Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F > and AVX512PF built-in functions and code generation. > > mavx512er > -Target Mask(ISA_AVX512ER) Var(ix86_isa_flags) Save > +Target Mask(ISA_AVX512ER) Var(ix86_isa_flags) Save Warn(AVX512ER support > will be removed in GCC 15) > Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F > and AVX512ER built-in functions and code generation. > > mavx512cd > @@ -770,11 +770,11 @@ Target Mask(ISA_AVX512VBMI) Var(ix86_isa_flags) Save > Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F > and AVX512VBMI built-in functions and code generation. > > mavx5124fmaps > -Target Mask(ISA2_AVX5124FMAPS) Var(ix86_isa_flags2) Save > +Target Mask(ISA2_AVX5124FMAPS) Var(ix86_isa_flags2) Save Warn(AVX5124FMAPS > support will be removed in GCC 15) > Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and > AVX5124FMAPS built-in functions and code generation. > > mavx5124vnniw > -Target Mask(ISA2_AVX5124VNNIW) Var(ix86_isa_flags2) Save > +Target Mask(ISA2_AVX5124VNNIW) Var(ix86_isa_flags2) Save Warn(AVX5124VNNIW > support will be removed in GCC 15) > Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and > AVX5124VNNIW built-in functions and code generation. > > mavx512vpopcntdq > @@ -969,7 +969,7 @@ Target Mask(ISA_F16C) Var(ix86_isa_flags) Save > Support F16C built-in functions and code generation. > > mprefetchwt1 > -Target Mask(ISA_PREFETCHWT1) Var(ix86_isa_flags) Save > +Target Mask(ISA_PREFETCHWT1) Var(ix86_isa_flags) Save Warn(PREFETCHWT1 > support will be removed in GCC 15) > Support PREFETCHWT1 built-in functions and code generation. > > mfentry > diff --git a/gcc/testsuite/g++.dg/other/i386-2.C > b/gcc/testsuite/g++.dg/other/i386-2.C > index 7d68967488d..b1c59579455 100644 > --- a/gcc/testsuite/g++.dg/other/i386-2.C > +++ b/gcc/testsuite/g++.dg/other/i386-2.C > @@ -1,5 +1,10 @@ > /* { dg-do compile { target i?86-*-* x86_64-*-* } } */ > /* { dg-options "-O -pedantic-errors -march=k8 -msse4a -m3dnow -mavx -mavx2 > -mfma4 -mxop -maes -mpclmul -mpopcnt -mabm -mlzcnt -mbmi -mbmi2 -mtbm -mlwp > -mfsgsbase -mrdrnd -mf16c -mfma -mrtm -mrdseed -mprfchw -madx -mfxsr > -mxsaveopt -mavx512f -mavx512er -mavx512cd -mavx512pf -msha -mprefetchwt1 > -mxsavec -mxsaves -mclflushopt -mavx512dq -mavx512bw -mavx512vl -mavx512ifma > -mavx512vbmi -mavx512vbmi2 -mavx5124fmaps -mavx5124vnniw -mavx512vpopcntdq > -mclwb -mmwaitx -mclzero -mpku -msgx -mrdpid -mgfni -mavx512bitalg -mpconfig > -mwbnoinvd -mavx512bf16 -menqcmd -mavx512vp2intersect -mserialize -mtsxldtrk > -mamx-tile -mamx-int8 -mamx-bf16 -mkl -mwidekl -mavxvnni -mavx512fp16 > -mavxifma -mavxvnniint8 -mavxneconvert -mcmpccxadd -mamx-fp16 -mprefetchi > -mraoint -mamx-complex -mavxvnniint16 -msm3 -msha512 -msm4" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX5124VNNIW support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "PREFETCHWT1 support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > /* Test that {,x,e,p,t,s,w,a,b,i}mmintrin.h, mm3dnow.h, fma4intrin.h, > xopintrin.h, abmintrin.h, bmiintrin.h, tbmintrin.h, lwpintrin.h, > diff --git a/gcc/testsuite/g++.dg/other/i386-3.C > b/gcc/testsuite/g++.dg/other/i386-3.C > index 9b775c33ab4..f7b6d18a20e 100644 > --- a/gcc/testsuite/g++.dg/other/i386-3.C > +++ b/gcc/testsuite/g++.dg/other/i386-3.C > @@ -1,5 +1,10 @@ > /* { dg-do compile { target i?86-*-* x86_64-*-* } } */ > /* { dg-options "-O -fkeep-inline-functions -march=k8 -msse4a -m3dnow -mavx > -mavx2 -mfma4 -mxop -maes -mpclmul -mpopcnt -mabm -mlzcnt -mbmi -mbmi2 -mtbm > -mlwp -mfsgsbase -mrdrnd -mf16c -mfma -mrtm -mrdseed -mprfchw -madx -mfxsr > -mxsaveopt -mavx512f -mavx512er -mavx512cd -mavx512pf -msha -mprefetchwt1 > -mxsavec -mxsaves -mclflushopt -mavx512dq -mavx512bw -mavx512vl -mavx512ifma > -mavx512vbmi -mavx512vbmi2 -mavx5124fmaps -mavx5124vnniw -mavx512vpopcntdq > -mclwb -mmwaitx -mclzero -mpku -msgx -mrdpid -mgfni -mavx512bitalg -mpconfig > -mwbnoinvd -mavx512bf16 -menqcmd -mavx512vp2intersect -mserialize -mtsxldtrk > -mamx-tile -mamx-int8 -mamx-bf16 -mkl -mwidekl -mavxvnni -mavx512fp16 > -mavxifma -mavxvnniint8 -mavxneconvert -mcmpccxadd -mamx-fp16 -mprefetchi > -mraoint -mamx-complex -mavxvnniint16 -msm3 -msha512 -msm4" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX5124VNNIW support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "PREFETCHWT1 support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > /* Test that {,x,e,p,t,s,w,a,b,i}mmintrin.h, mm3dnow.h, fma4intrin.h, > xopintrin.h, abmintrin.h, bmiintrin.h, tbmintrin.h, lwpintrin.h, > diff --git a/gcc/testsuite/g++.dg/pr80481.C b/gcc/testsuite/g++.dg/pr80481.C > index 3a886991463..c2931100906 100644 > --- a/gcc/testsuite/g++.dg/pr80481.C > +++ b/gcc/testsuite/g++.dg/pr80481.C > @@ -1,7 +1,7 @@ > // { dg-do compile { target { i?86-*-* x86_64-*-* } && { ! *-*-solaris* } } > } > // -fopenmp implies -pthread > // { dg-require-effective-target pthread } > -// { dg-options "-Ofast -funroll-loops -fopenmp -march=knl" } > +// { dg-options "-Ofast -funroll-loops -fopenmp -march=skylake-avx512" } > // Disabling epilogues until we find a better way to deal with scans. > // { dg-additional-options "--param vect-epilogues-nomask=0" } > > diff --git a/gcc/testsuite/gcc.dg/pr71279.c b/gcc/testsuite/gcc.dg/pr71279.c > index 4ecc84b6425..46c7a95aea7 100644 > --- a/gcc/testsuite/gcc.dg/pr71279.c > +++ b/gcc/testsuite/gcc.dg/pr71279.c > @@ -1,7 +1,7 @@ > /* PR middle-end/71279 */ > /* { dg-do compile } */ > /* { dg-options "-O3" } */ > -/* { dg-additional-options "-march=knl" { target { i?86-*-* x86_64-*-* } } } > */ > +/* { dg-additional-options "-march=skylake-avx512" { target { i?86-*-* > x86_64-*-* } } } */ > > extern int a, b; > long c[1][1][1]; > diff --git a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddps-1.c > b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddps-1.c > index 1035f253f06..3c3c9f619ad 100644 > --- a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -mavx5124fmaps" } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "v4fmaddps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "v4fmaddps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "v4fmaddps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddps-2.c > b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddps-2.c > index f977b65dad0..ad453975b38 100644 > --- a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddps-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddps-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-options "-O2 -mavx5124fmaps" } */ > /* { dg-require-effective-target avx5124fmaps } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #define ESP_FLOAT 1.0 > > diff --git a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddss-1.c > b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddss-1.c > index 2f1a558a1a2..53830420afa 100644 > --- a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddss-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fmaddss-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -mavx5124fmaps" } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "v4fmaddss\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "v4fmaddss\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "v4fmaddss\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddps-1.c > b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddps-1.c > index 45bd7dace48..acb666b3093 100644 > --- a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -mavx5124fmaps" } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "v4fnmaddps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "v4fnmaddps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "v4fnmaddps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddps-2.c > b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddps-2.c > index 3c75fcf2d15..5dcdfe48c0a 100644 > --- a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddps-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddps-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-options "-O2 -mavx5124fmaps" } */ > /* { dg-require-effective-target avx5124fmaps } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #define ESP_FLOAT 1.0 > > diff --git a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddss-1.c > b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddss-1.c > index 1755afb9332..bfeb46dc9a1 100644 > --- a/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddss-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx5124fmadd-v4fnmaddss-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -mavx5124fmaps" } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "v4fnmaddss\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "v4fnmaddss\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "v4fnmaddss\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssd-1.c > b/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssd-1.c > index a234fddf54a..bcabfac416f 100644 > --- a/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -mavx5124vnniw" } */ > +/* { dg-warning "AVX5124VNNIW support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vp4dpwssd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vp4dpwssd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vp4dpwssd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssd-2.c > b/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssd-2.c > index a0a6825e7c9..9044ce5ea19 100644 > --- a/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssd-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssd-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-options "-O2 -mavx5124vnniw" } */ > /* { dg-require-effective-target avx5124vnniw } */ > +/* { dg-warning "AVX5124VNNIW support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #define AVX5124VNNIW > #include "avx512f-helper.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssds-1.c > b/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssds-1.c > index d1bed37d1c0..e3e46c53368 100644 > --- a/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssds-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssds-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -mavx5124vnniw" } */ > +/* { dg-warning "AVX5124VNNIW support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vp4dpwssds\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vp4dpwssds\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vp4dpwssds\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssds-2.c > b/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssds-2.c > index e1e5536558c..193477c9864 100644 > --- a/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssds-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx5124vnniw-vp4dpwssds-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-options "-O2 -mavx5124vnniw" } */ > /* { dg-require-effective-target avx5124vnniw } */ > +/* { dg-warning "AVX5124VNNIW support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #define DEFAULT_VALUE 0x7ffffffe > > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vexp2pd-1.c > b/gcc/testsuite/gcc.target/i386/avx512er-vexp2pd-1.c > index 7e1eb6bf63e..93766d87451 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vexp2pd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vexp2pd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512er -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vexp2pd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vexp2pd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vexp2pd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vexp2pd-2.c > b/gcc/testsuite/gcc.target/i386/avx512er-vexp2pd-2.c > index ce4e86c1f95..20457e1fcd2 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vexp2pd-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vexp2pd-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > #include "avx512f-mask-type.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vexp2ps-1.c > b/gcc/testsuite/gcc.target/i386/avx512er-vexp2ps-1.c > index e5de38087fb..130a2e001c7 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vexp2ps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vexp2ps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512er -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vexp2ps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vexp2ps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vexp2ps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vexp2ps-2.c > b/gcc/testsuite/gcc.target/i386/avx512er-vexp2ps-2.c > index ab911c017a3..6294dfffee7 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vexp2ps-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vexp2ps-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > #include "avx512f-mask-type.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28pd-1.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28pd-1.c > index f00b42ea50a..8959c0544a2 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28pd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28pd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512er -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vrcp28pd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrcp28pd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrcp28pd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28pd-2.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28pd-2.c > index 609aeaa31c6..aaab1dc0eb2 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28pd-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28pd-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > #include "avx512f-mask-type.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-1.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-1.c > index 15f4a50cc1e..f0da889361d 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512er -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vrcp28ps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrcp28ps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrcp28ps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-2.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-2.c > index 4059e0e7f52..241327143e0 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > #include "avx512f-mask-type.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-3.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-3.c > index e08bea41c3e..c0b1f7b3102 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-3.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-3.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -ffast-math -ftree-vectorize -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-4.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-4.c > index 2c76d967184..b042849cba4 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-4.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ps-4.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -ffast-math -ftree-vectorize -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-vrcp28ps-3.c" > > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28sd-1.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28sd-1.c > index 03e75cc5f3b..f70042580b6 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28sd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28sd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512er -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vrcp28sd\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrcp28sd\[ > \\t\]+\[^\{\n\]*\{sae\}\[^\n\]*%xmm\[0-9\]+\[^\{\]*(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrcp28sd\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28sd-2.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28sd-2.c > index 93d370d0d78..b434c3c26d9 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28sd-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28sd-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > #include "avx512f-mask-type.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ss-1.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ss-1.c > index 87a8ac3026f..c819c1abdae 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ss-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ss-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512er -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vrcp28ss\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrcp28ss\[ > \\t\]+\[^\{\n\]*\{sae\}\[^\n\]*%xmm\[0-9\]+\[^\{\]*(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrcp28ss\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ss-2.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ss-2.c > index 4ffa92c66ee..f3b894b2f47 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ss-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrcp28ss-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > #include "avx512f-mask-type.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28pd-1.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28pd-1.c > index a9dfd6a2cff..67822d15296 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28pd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28pd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512er -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vrsqrt28pd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrsqrt28pd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrsqrt28pd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28pd-2.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28pd-2.c > index 84a66addd55..3227df84b2e 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28pd-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28pd-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > #include "avx512f-mask-type.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-1.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-1.c > index 415980d21ba..63ff4eab724 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512er -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vrsqrt28ps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrsqrt28ps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrsqrt28ps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-2.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-2.c > index a92472e6191..911683f5e54 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > #include "avx512f-mask-type.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-3.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-3.c > index 40aefb50844..a8ab49ed6c3 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-3.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-3.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -ffast-math -ftree-vectorize -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include <math.h> > #include "avx512er-check.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-4.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-4.c > index 2f5f73fd781..4a793a6b0ae 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-4.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-4.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -ffast-math -ftree-vectorize -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-vrsqrt28ps-3.c" > > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-5.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-5.c > index 498f4d50aa5..9a8a88ae2b5 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-5.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-5.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -ffast-math -ftree-vectorize -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include <math.h> > #include "avx512er-check.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-6.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-6.c > index 77c5cba1cef..f1f013572f7 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-6.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ps-6.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -ffast-math -ftree-vectorize -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-vrsqrt28ps-5.c" > > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28sd-1.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28sd-1.c > index ca549062b75..28f6b193b3b 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28sd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28sd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512er -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vrsqrt28sd\[ > \\t\]+\[^\{^\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrsqrt28sd\[ > \\t\]+\[^\{\n\]*\{sae\}\[^\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrsqrt28sd\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28sd-2.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28sd-2.c > index 2606191b97b..31910210571 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28sd-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28sd-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > #include "avx512f-mask-type.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ss-1.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ss-1.c > index c97376ed746..29a9736f89c 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ss-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ss-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512er -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vrsqrt28ss\[ > \\t\]+\[^\{^\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrsqrt28ss\[ > \\t\]+\[^\{\n\]*\{sae\}\[^\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > /* { dg-final { scan-assembler-times "vrsqrt28ss\[ > \\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */ > diff --git a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ss-2.c > b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ss-2.c > index fa1c19b9f6b..f9c4488facc 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ss-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ss-2.c > @@ -1,6 +1,7 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512er } */ > /* { dg-options "-O2 -mavx512er" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "avx512er-check.h" > #include "avx512f-mask-type.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-gather-1.c > b/gcc/testsuite/gcc.target/i386/avx512f-gather-1.c > index eb9cbc1a635..305d402a846 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-gather-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-gather-1.c > @@ -1,6 +1,6 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512f } */ > -/* { dg-options "-O3 -mavx512f -mtune=knl" } */ > +/* { dg-options "-O3 -mavx512f -march=sapphirerapids > -mprefer-vector-width=512" } */ > > #include "avx512f-check.h" > > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-gather-2.c > b/gcc/testsuite/gcc.target/i386/avx512f-gather-2.c > index df1b915fdd1..ef424b09b8e 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-gather-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-gather-2.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ /* PR59617 */ > -/* { dg-options "-O3 -mavx512f -fdump-tree-vect-details -mtune=knl" } */ > +/* { dg-options "-O3 -mavx512f -march=sapphirerapids > -fdump-tree-vect-details -mprefer-vector-width=512" } */ > /* Disabling epilogues until we find a better way to deal with scans. */ > /* { dg-additional-options "--param vect-epilogues-nomask=0" } */ > > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-gather-3.c > b/gcc/testsuite/gcc.target/i386/avx512f-gather-3.c > index 2054a949325..51012c7dcdf 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-gather-3.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-gather-3.c > @@ -1,6 +1,6 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512f } */ > -/* { dg-options "-O3 -mavx512f -ffast-math -mtune=knl" } */ > +/* { dg-options "-O3 -mavx512f -march=sapphirerapids -ffast-math > -mprefer-vector-width=512" } */ > > #include "avx512f-check.h" > > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-gather-4.c > b/gcc/testsuite/gcc.target/i386/avx512f-gather-4.c > index b500ca1fd48..10264c63757 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-gather-4.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-gather-4.c > @@ -1,6 +1,6 @@ > /* { dg-do run } */ > /* { dg-require-effective-target avx512f } */ > -/* { dg-options "-O3 -mavx512f -mtune=knl" } */ > +/* { dg-options "-O3 -mavx512f -march=sapphirerapids > -mprefer-vector-width=512" } */ > > #include "avx512f-check.h" > > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-gather-5.c > b/gcc/testsuite/gcc.target/i386/avx512f-gather-5.c > index 686da706edf..ad8cba58d96 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-gather-5.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-gather-5.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-O3 -mavx512f -mtune=knl" } */ > +/* { dg-options "-O3 -mavx512f -march=sapphirerapids > -mprefer-vector-width=512" } */ > /* Disabling epilogues until we find a better way to deal with scans. */ > /* { dg-additional-options "--param vect-epilogues-nomask=0" } */ > > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-i32gatherd512-1.c > b/gcc/testsuite/gcc.target/i386/avx512f-i32gatherd512-1.c > index b27d6c9f8e2..55b8d398522 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-i32gatherd512-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-i32gatherd512-1.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-mavx512f -O2 -mtune=knl" } */ > +/* { dg-options "-mavx512f -O2" } */ > /* { dg-final { scan-assembler-times "vpgatherdd\[ > \\t\]+\[^\{\n\]*zmm\[0-9\]\[^\n\]*zmm\[0-9\]{%k\[1-7\]}(?:\n|\[ \\t\]+#)" 2 } > } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-i32gatherd512-2.c > b/gcc/testsuite/gcc.target/i386/avx512f-i32gatherd512-2.c > index faf96b6e6f7..d89ef048d82 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-i32gatherd512-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-i32gatherd512-2.c > @@ -1,5 +1,5 @@ > /* { dg-do run } */ > -/* { dg-options "-mavx512f -O2 -mtune=knl" } */ > +/* { dg-options "-mavx512f -O2" } */ > /* { dg-require-effective-target avx512f } */ > > #include "avx512f-check.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-i32gatherpd512-1.c > b/gcc/testsuite/gcc.target/i386/avx512f-i32gatherpd512-1.c > index b94de200e67..cf8e36905e5 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-i32gatherpd512-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-i32gatherpd512-1.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-mavx512f -O2 -mtune=knl" } */ > +/* { dg-options "-mavx512f -O2" } */ > /* { dg-final { scan-assembler-times "vgatherdpd\[ > \\t\]+\[^\{\n\]*ymm\[0-9\]\[^\n\]*zmm\[0-9\]{%k\[1-7\]}(?:\n|\[ \\t\]+#)" 2 } > } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-i32gatherpd512-2.c > b/gcc/testsuite/gcc.target/i386/avx512f-i32gatherpd512-2.c > index d697ec22c8e..3af491548ba 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-i32gatherpd512-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-i32gatherpd512-2.c > @@ -1,5 +1,5 @@ > /* { dg-do run } */ > -/* { dg-options "-mavx512f -O2 -mtune=knl" } */ > +/* { dg-options "-mavx512f -O2" } */ > /* { dg-require-effective-target avx512f } */ > > #include "avx512f-check.h" > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-i32gatherps512-1.c > b/gcc/testsuite/gcc.target/i386/avx512f-i32gatherps512-1.c > index 9f3e65520fc..1f1fab38d31 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-i32gatherps512-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-i32gatherps512-1.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-mavx512f -O2 -mtune=knl" } */ > +/* { dg-options "-mavx512f -O2" } */ > /* { dg-final { scan-assembler-times "vgatherdps\[ > \\t\]+\[^\{\n\]*zmm\[0-9\]\[^\n\]*zmm\[0-9\]{%k\[1-7\]}(?:\n|\[ \\t\]+#)" 2 } > } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-vect-perm-1.c > b/gcc/testsuite/gcc.target/i386/avx512f-vect-perm-1.c > index ea6760d481c..a5b7abaedcd 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-vect-perm-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-vect-perm-1.c > @@ -1,14 +1,14 @@ > -/* { dg-do compile } */ > -/* { dg-options "-O2 -ftree-vectorize -ffast-math -march=knl" } */ > -/* { dg-final { scan-assembler-times "vpermps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > - > -#define N 1024 > -float f1[N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__))); > -float f2[N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__))); > - > -void foo () > -{ > - int j; > - for (j=0; j<N; j++) > - f1[j] += f2[N-j]; > -} > +/* { dg-do compile } */ > +/* { dg-options "-O2 -ftree-vectorize -ffast-math -march=skylake-avx512 > -mprefer-vector-width=512" } */ > +/* { dg-final { scan-assembler-times "vpermd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > + > +#define N 1024 > +float f1[N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__))); > +float f2[N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__))); > + > +void foo () > +{ > + int j; > + for (j=0; j<N; j++) > + f1[j] += f2[N-j]; > +} > diff --git a/gcc/testsuite/gcc.target/i386/avx512f-vect-perm-2.c > b/gcc/testsuite/gcc.target/i386/avx512f-vect-perm-2.c > index 29d00d75ac9..cef44b1b6a5 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512f-vect-perm-2.c > +++ b/gcc/testsuite/gcc.target/i386/avx512f-vect-perm-2.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-O2 -ftree-vectorize -ffast-math -march=knl" } */ > +/* { dg-options "-O2 -ftree-vectorize -ffast-math -march=skylake-avx512 > -mprefer-vector-width=512" } */ > /* { dg-final { scan-assembler-times "vpermpd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */ > > #define N 1024 > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dpd-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dpd-1.c > index 0c6fc4363f0..f694f2188dd 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dpd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dpd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vgatherpf0dpd\[ > \\t\]+\[^\{\n\]*\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dps-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dps-1.c > index 0953769697e..9376c1d6f38 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vgatherpf0dps\[ > \\t\]+\[^\{\n\]*\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qpd-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qpd-1.c > index 1fb853431ca..13cfac5c7e6 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qpd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qpd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vgatherpf0qpd\[ > \\t\]+\[^\{\n\]*\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qps-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qps-1.c > index 7ccba277b2a..79fc548619d 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vgatherpf0qps\[ > \\t\]+\[^\{\n\]*\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dpd-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dpd-1.c > index 5dffec17fbf..1949fe16f69 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dpd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dpd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vgatherpf1dpd\[ > \\t\]+\[^\{\n\]*\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dps-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dps-1.c > index 0ffbc9cfbd9..a0fc183c91e 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vgatherpf1dps\[ > \\t\]+\[^\{\n\]*\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qpd-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qpd-1.c > index 22450fff7d4..e3cedbb881c 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qpd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qpd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vgatherpf1qpd\[ > \\t\]+\[^\{\n\]*\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qps-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qps-1.c > index ddc4eacce3f..6ed7297376f 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vgatherpf1qps\[ > \\t\]+\[^\{\n\]*\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dpd-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dpd-1.c > index 5a153ea3d4c..3fc2c024ef3 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dpd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dpd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vscatterpf0dpd\[ > \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*\\)\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } > */ > #include <immintrin.h> > > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dps-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dps-1.c > index d1173a2b7f3..5689e3a5151 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vscatterpf0dps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*\\)\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } > */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qpd-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qpd-1.c > index 67529e7be83..cf5596377fe 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qpd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qpd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vscatterpf0qpd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*\\)\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } > */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qps-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qps-1.c > index 9ff580fea4d..eeb65d42f0f 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vscatterpf0qps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*\\)\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } > */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dpd-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dpd-1.c > index 73a029d10a1..39b36d1bbe7 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dpd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dpd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vscatterpf1dpd\[ > \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*\\)\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } > */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dps-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dps-1.c > index 439bc853485..edcde856d8a 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vscatterpf1dps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*\\)\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } > */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qpd-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qpd-1.c > index 3ae16cd2e19..c4cdaa8c590 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qpd-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qpd-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vscatterpf1qpd\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*\\)\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } > */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qps-1.c > b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qps-1.c > index 35cd7d3b5d3..95ab72eebe2 100644 > --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qps-1.c > +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qps-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512pf -O2" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-times "vscatterpf1qps\[ > \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*\\)\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } > */ > > #include <immintrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/funcspec-56.inc > b/gcc/testsuite/gcc.target/i386/funcspec-56.inc > index 210da1d1a8a..e910e1f9211 100644 > --- a/gcc/testsuite/gcc.target/i386/funcspec-56.inc > +++ b/gcc/testsuite/gcc.target/i386/funcspec-56.inc > @@ -1,8 +1,6 @@ > /* Common 32-bit and 64-bit function specific options. */ > > extern void test_sgx (void) > __attribute__((__target__("sgx"))); > -extern void test_avx5124fmaps(void) > __attribute__((__target__("avx5124fmaps"))); > -extern void test_avx5124vnniw(void) > __attribute__((__target__("avx5124vnniw"))); > extern void test_avx512vpopcntdq(void) > __attribute__((__target__("avx512vpopcntdq"))); > > extern void test_avx512vbmi (void) > __attribute__((__target__("avx512vbmi"))); > @@ -10,8 +8,6 @@ extern void test_avx512ifma (void) > __attribute__((__target__("avx512ifma"))); > extern void test_avx512vl (void) > __attribute__((__target__("avx512vl"))); > extern void test_avx512bw (void) > __attribute__((__target__("avx512bw"))); > extern void test_avx512dq (void) > __attribute__((__target__("avx512dq"))); > -extern void test_avx512er (void) > __attribute__((__target__("avx512er"))); > -extern void test_avx512pf (void) > __attribute__((__target__("avx512pf"))); > extern void test_avx512cd (void) > __attribute__((__target__("avx512cd"))); > extern void test_avx512f (void) > __attribute__((__target__("avx512f"))); > extern void test_avx2 (void) > __attribute__((__target__("avx2"))); > @@ -38,7 +34,6 @@ extern void test_rtm (void) > __attribute__((__target__("rtm"))); > extern void test_prfchw (void) > __attribute__((__target__("prfchw"))); > extern void test_rdseed (void) > __attribute__((__target__("rdseed"))); > extern void test_adx (void) > __attribute__((__target__("adx"))); > -extern void test_prefetchwt1 (void) > __attribute__((__target__("prefetchwt1"))); > extern void test_clflushopt (void) > __attribute__((__target__("clflushopt"))); > extern void test_xsaves (void) > __attribute__((__target__("xsaves"))); > extern void test_xsavec (void) > __attribute__((__target__("xsavec"))); > @@ -95,8 +90,6 @@ extern void test_sm4 (void) > __attribute__((__target__("sm4") > extern void test_user_msr (void) > __attribute__((__target__("usermsr"))); > > extern void test_no_sgx (void) > __attribute__((__target__("no-sgx"))); > -extern void test_no_avx5124fmaps(void) > __attribute__((__target__("no-avx5124fmaps"))); > -extern void test_no_avx5124vnniw(void) > __attribute__((__target__("no-avx5124vnniw"))); > extern void test_no_avx512vpopcntdq(void) > __attribute__((__target__("no-avx512vpopcntdq"))); > > extern void test_no_avx512vbmi (void) > __attribute__((__target__("no-avx512vbmi"))); > @@ -104,8 +97,6 @@ extern void test_no_avx512ifma (void) > __attribute__((__target__("no-avx512ifma" > extern void test_no_avx512vl (void) > __attribute__((__target__("no-avx512vl"))); > extern void test_no_avx512bw (void) > __attribute__((__target__("no-avx512bw"))); > extern void test_no_avx512dq (void) > __attribute__((__target__("no-avx512dq"))); > -extern void test_no_avx512er (void) > __attribute__((__target__("no-avx512er"))); > -extern void test_no_avx512pf (void) > __attribute__((__target__("no-avx512pf"))); > extern void test_no_avx512cd (void) > __attribute__((__target__("no-avx512cd"))); > extern void test_no_avx512f (void) > __attribute__((__target__("no-avx512f"))); > extern void test_no_avx2 (void) > __attribute__((__target__("no-avx2"))); > @@ -132,7 +123,6 @@ extern void test_no_rtm (void) > __attribute__((__target__("no-rtm"))); > extern void test_no_prfchw (void) > __attribute__((__target__("no-prfchw"))); > extern void test_no_rdseed (void) > __attribute__((__target__("no-rdseed"))); > extern void test_no_adx (void) > __attribute__((__target__("no-adx"))); > -extern void test_no_prefetchwt1 (void) > __attribute__((__target__("no-prefetchwt1"))); > extern void test_no_clflushopt (void) > __attribute__((__target__("no-clflushopt"))); > extern void test_no_xsaves (void) > __attribute__((__target__("no-xsaves"))); > extern void test_no_xsavec (void) > __attribute__((__target__("no-xsavec"))); > @@ -200,8 +190,6 @@ extern void test_arch_tremont (void) > __attribute__((__target__("arch=tremont")) > extern void test_arch_sierraforest (void) > __attribute__((__target__("arch=sierraforest"))); > extern void test_arch_grandridge (void) > __attribute__((__target__("arch=grandridge"))); > extern void test_arch_clearwaterforest (void) > __attribute__((__target__("arch=clearwaterforest"))); > -extern void test_arch_knl (void) > __attribute__((__target__("arch=knl"))); > -extern void test_arch_knm (void) > __attribute__((__target__("arch=knm"))); > extern void test_arch_skylake (void) > __attribute__((__target__("arch=skylake"))); > extern void test_arch_skylake_avx512 (void) > __attribute__((__target__("arch=skylake-avx512"))); > extern void test_arch_cannonlake (void) > __attribute__((__target__("arch=cannonlake"))); > diff --git a/gcc/testsuite/gcc.target/i386/pr103404.c > b/gcc/testsuite/gcc.target/i386/pr103404.c > index 66f33645301..3e970ef4966 100644 > --- a/gcc/testsuite/gcc.target/i386/pr103404.c > +++ b/gcc/testsuite/gcc.target/i386/pr103404.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-additional-options "-Og -fcse-follow-jumps -fno-dce > -fno-early-inlining -fgcse -fharden-conditional-branches > -frerun-cse-after-loop -fno-tree-ccp -mavx5124fmaps -std=c99 -w" } */ > +/* { dg-additional-options "-Og -fcse-follow-jumps -fno-dce > -fno-early-inlining -fgcse -fharden-conditional-branches > -frerun-cse-after-loop -fno-tree-ccp -mavx512f -std=c99 -w" } */ > > typedef unsigned __attribute__((__vector_size__ (4))) U; > typedef unsigned __attribute__((__vector_size__ (16))) V; > diff --git a/gcc/testsuite/gcc.target/i386/pr104448.c > b/gcc/testsuite/gcc.target/i386/pr104448.c > index b10345afc48..3cf913e94ea 100644 > --- a/gcc/testsuite/gcc.target/i386/pr104448.c > +++ b/gcc/testsuite/gcc.target/i386/pr104448.c > @@ -1,6 +1,7 @@ > /* PR target/104448 */ > /* { dg-do compile { target { *-*-linux* && lp64 } } } */ > /* { dg-options "-mavx5124vnniw -mno-xsave -mabi=ms" } */ > +/* { dg-warning "AVX5124VNNIW support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > int > main () > diff --git a/gcc/testsuite/gcc.target/i386/pr107934.c > b/gcc/testsuite/gcc.target/i386/pr107934.c > index 59106b29159..67786cd26af 100644 > --- a/gcc/testsuite/gcc.target/i386/pr107934.c > +++ b/gcc/testsuite/gcc.target/i386/pr107934.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-O2 -mtune=knl -ffinite-math-only -msse2" } */ > +/* { dg-options "-O2 -mtune=icelake-server -ffinite-math-only -msse2" } */ > > int > foo (__bf16 bf) > diff --git a/gcc/testsuite/gcc.target/i386/pr64387.c > b/gcc/testsuite/gcc.target/i386/pr64387.c > index dd381425a27..332a639871c 100644 > --- a/gcc/testsuite/gcc.target/i386/pr64387.c > +++ b/gcc/testsuite/gcc.target/i386/pr64387.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-O2 -ftree-vectorize -ffloat-store -mavx512er" } */ > +/* { dg-options "-O2 -ftree-vectorize -ffloat-store -mavx2" } */ > > float x[256]; > > diff --git a/gcc/testsuite/gcc.target/i386/pr69471-3.c > b/gcc/testsuite/gcc.target/i386/pr69471-3.c > deleted file mode 100644 > index 3826f969090..00000000000 > --- a/gcc/testsuite/gcc.target/i386/pr69471-3.c > +++ /dev/null > @@ -1,11 +0,0 @@ > -/* { dg-do compile } */ > -/* { dg-options "-march=native -march=knl" } */ > - > -/* NB: We want to verify that -march=native -march=processor is the same > - as -march=processor. Since it is very unlikely that GCC will be built > - on KNL, -march=native will have -mno-avx512er and -march=knl should > - enable AVX512ER. */ > - > -#ifndef __AVX512ER__ > -# error __AVX512ER__ is not defined > -#endif > diff --git a/gcc/testsuite/gcc.target/i386/pr70728.c > b/gcc/testsuite/gcc.target/i386/pr70728.c > index 89c140dde20..ff0e8873d00 100644 > --- a/gcc/testsuite/gcc.target/i386/pr70728.c > +++ b/gcc/testsuite/gcc.target/i386/pr70728.c > @@ -1,6 +1,6 @@ > /* PR target/70728 */ > /* { dg-do compile } */ > -/* { dg-options "-S -Ofast -march=knl" } */ > +/* { dg-options "-S -Ofast -march=skylake-avx512" } */ > > short a = -15726; > int b = (int)-7003557328690506537LL; > diff --git a/gcc/testsuite/gcc.target/i386/pr71346.c > b/gcc/testsuite/gcc.target/i386/pr71346.c > index 0a15869155a..d17e3306cb2 100644 > --- a/gcc/testsuite/gcc.target/i386/pr71346.c > +++ b/gcc/testsuite/gcc.target/i386/pr71346.c > @@ -1,6 +1,6 @@ > /* PR target/71346 */ > /* { dg-do compile { target { ! ia32 } } } */ > -/* { dg-options "-O2 -ftree-vectorize -ffast-math -march=knl" } */ > +/* { dg-options "-O2 -ftree-vectorize -ffast-math -march=skylake-avx512 > -mno-avx512vl" } */ > > typedef int rvec[3]; > int a; > diff --git a/gcc/testsuite/gcc.target/i386/pr82941-2.c > b/gcc/testsuite/gcc.target/i386/pr82941-2.c > index db2f8589ab6..cafa1bf23ca 100644 > --- a/gcc/testsuite/gcc.target/i386/pr82941-2.c > +++ b/gcc/testsuite/gcc.target/i386/pr82941-2.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -march=knl" } */ > +/* { dg-warning "'-march=knl' support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "pr82941-1.c" > > diff --git a/gcc/testsuite/gcc.target/i386/pr82942-1.c > b/gcc/testsuite/gcc.target/i386/pr82942-1.c > index 9cdf81a9d60..b65b73d23ac 100644 > --- a/gcc/testsuite/gcc.target/i386/pr82942-1.c > +++ b/gcc/testsuite/gcc.target/i386/pr82942-1.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-mavx512f -mno-avx512er -O2" } */ > +/* { dg-options "-mavx512f -O2" } */ > > #include "pr82941-1.c" > > diff --git a/gcc/testsuite/gcc.target/i386/pr82942-2.c > b/gcc/testsuite/gcc.target/i386/pr82942-2.c > index ddb4e689659..55572b03c9b 100644 > --- a/gcc/testsuite/gcc.target/i386/pr82942-2.c > +++ b/gcc/testsuite/gcc.target/i386/pr82942-2.c > @@ -1,5 +1,7 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512f -mavx512er -mtune=knl -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "'-mtune=knl' support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "pr82941-1.c" > > diff --git a/gcc/testsuite/gcc.target/i386/pr82990-1.c > b/gcc/testsuite/gcc.target/i386/pr82990-1.c > index ff1d6d40eb2..a87288987c9 100644 > --- a/gcc/testsuite/gcc.target/i386/pr82990-1.c > +++ b/gcc/testsuite/gcc.target/i386/pr82990-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -march=knl -mvzeroupper" } */ > +/* { dg-warning "'-march=knl' support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include <immintrin.h> > > diff --git a/gcc/testsuite/gcc.target/i386/pr82990-3.c > b/gcc/testsuite/gcc.target/i386/pr82990-3.c > index 201fa98d8d4..0c902cdf91b 100644 > --- a/gcc/testsuite/gcc.target/i386/pr82990-3.c > +++ b/gcc/testsuite/gcc.target/i386/pr82990-3.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mavx512f -mavx512er -mvzeroupper -O2" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "pr82941-1.c" > > diff --git a/gcc/testsuite/gcc.target/i386/pr82990-4.c > b/gcc/testsuite/gcc.target/i386/pr82990-4.c > index 09f161c7291..4ee1fbcbcf7 100644 > --- a/gcc/testsuite/gcc.target/i386/pr82990-4.c > +++ b/gcc/testsuite/gcc.target/i386/pr82990-4.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-mavx512f -mno-avx512er -mno-vzeroupper -O2" } */ > +/* { dg-options "-mavx512f -mno-vzeroupper -O2" } */ > > #include "pr82941-1.c" > > diff --git a/gcc/testsuite/gcc.target/i386/pr82990-6.c > b/gcc/testsuite/gcc.target/i386/pr82990-6.c > index 063a61c111d..41fd1cb17b6 100644 > --- a/gcc/testsuite/gcc.target/i386/pr82990-6.c > +++ b/gcc/testsuite/gcc.target/i386/pr82990-6.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -march=skylake-avx512 -mtune=knl" } */ > +/* { dg-warning "'-mtune=knl' support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "pr82941-1.c" > > diff --git a/gcc/testsuite/gcc.target/i386/pr88713-3.c > b/gcc/testsuite/gcc.target/i386/pr88713-3.c > index 85b6cf87a02..bd16d5e1d49 100644 > --- a/gcc/testsuite/gcc.target/i386/pr88713-3.c > +++ b/gcc/testsuite/gcc.target/i386/pr88713-3.c > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-options "-Ofast -mno-avx512er -march=skylake-avx512" } */ > +/* { dg-options "-Ofast -march=skylake-avx512" } */ > > #include <math.h> > > diff --git a/gcc/testsuite/gcc.target/i386/pr89523-5.c > b/gcc/testsuite/gcc.target/i386/pr89523-5.c > index 6a769c7a249..cdf3190c1b3 100644 > --- a/gcc/testsuite/gcc.target/i386/pr89523-5.c > +++ b/gcc/testsuite/gcc.target/i386/pr89523-5.c > @@ -1,6 +1,7 @@ > /* { dg-do compile { target { ! ia32 } } } */ > /* { dg-require-effective-target maybe_x32 } */ > /* { dg-options "-mx32 -O2 -mavx512pf" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler "\tvgather" } } */ > /* { dg-final { scan-assembler-not "addr32 vgather" } } */ > > diff --git a/gcc/testsuite/gcc.target/i386/pr89523-6.c > b/gcc/testsuite/gcc.target/i386/pr89523-6.c > index 82f795e085c..d69206d1115 100644 > --- a/gcc/testsuite/gcc.target/i386/pr89523-6.c > +++ b/gcc/testsuite/gcc.target/i386/pr89523-6.c > @@ -1,6 +1,7 @@ > /* { dg-do compile { target { ! ia32 } } } */ > /* { dg-require-effective-target maybe_x32 } */ > /* { dg-options "-mx32 -O2 -mavx512pf" } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler-not "\tvgather" } } */ > /* { dg-final { scan-assembler "addr32 vgather" } } */ > > diff --git a/gcc/testsuite/gcc.target/i386/pr91033.c > b/gcc/testsuite/gcc.target/i386/pr91033.c > index 43d99d5a7dc..3b52c66380f 100644 > --- a/gcc/testsuite/gcc.target/i386/pr91033.c > +++ b/gcc/testsuite/gcc.target/i386/pr91033.c > @@ -1,6 +1,7 @@ > /* PR tree-optimization/91033 */ > /* { dg-do compile { target pthread } } */ > /* { dg-options "-march=knl -O2 -fopenmp-simd -ftree-parallelize-loops=2" } > */ > +/* { dg-warning "'-march=knl' support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #define N 1024 > int a[N]; > diff --git a/gcc/testsuite/gcc.target/i386/pr94561.c > b/gcc/testsuite/gcc.target/i386/pr94561.c > index 49fdf7e687d..9dbfc2d3d69 100644 > --- a/gcc/testsuite/gcc.target/i386/pr94561.c > +++ b/gcc/testsuite/gcc.target/i386/pr94561.c > @@ -1,6 +1,6 @@ > /* PR target/94561 */ > /* { dg-do compile } */ > -/* { dg-options "-march=knl -O3 -funroll-loops" } */ > +/* { dg-options "-mavx512f -O3 -funroll-loops" } */ > > struct xi { > long int mg; > diff --git a/gcc/testsuite/gcc.target/i386/prefetchwt1-1.c > b/gcc/testsuite/gcc.target/i386/prefetchwt1-1.c > index 1b88516ede3..742a3203069 100644 > --- a/gcc/testsuite/gcc.target/i386/prefetchwt1-1.c > +++ b/gcc/testsuite/gcc.target/i386/prefetchwt1-1.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-mprefetchwt1 -O2" } */ > +/* { dg-warning "PREFETCHWT1 support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > /* { dg-final { scan-assembler "\[ \\t\]+prefetchwt1\[ \\t\]+" } } */ > > #include <x86intrin.h> > diff --git a/gcc/testsuite/gcc.target/i386/sse-12.c > b/gcc/testsuite/gcc.target/i386/sse-12.c > index a553a5202d1..765fd4de778 100644 > --- a/gcc/testsuite/gcc.target/i386/sse-12.c > +++ b/gcc/testsuite/gcc.target/i386/sse-12.c > @@ -4,6 +4,11 @@ > with -O -std=c89 -pedantic-errors. */ > /* { dg-do compile } */ > /* { dg-options "-O -std=c89 -pedantic-errors -march=k8 -msse4a -m3dnow > -mavx -mavx2 -mfma4 -mxop -maes -mpclmul -mpopcnt -mabm -mlzcnt -mbmi -mbmi2 > -mtbm -mlwp -mfsgsbase -mrdrnd -mf16c -mfma -mrtm -mrdseed -mprfchw -madx > -mfxsr -mxsaveopt -mavx512f -mavx512er -mavx512cd -mavx512pf -msha > -mprefetchwt1 -mxsavec -mxsaves -mclflushopt -mavx512bw -mavx512dq -mavx512vl > -mavx512vbmi -mavx512vbmi2 -mavx512ifma -mavx5124fmaps -mavx5124vnniw > -mavx512vpopcntdq -mclwb -mmwaitx -mclzero -mpku -msgx -mrdpid -mgfni > -mavx512bitalg -mpconfig -mwbnoinvd -mavx512bf16 -menqcmd > -mavx512vp2intersect -mserialize -mtsxldtrk -mamx-tile -mamx-int8 -mamx-bf16 > -mkl -mwidekl -mavxvnni -mavxifma -mavxvnniint8 -mavxneconvert -mamx-fp16 > -mraoint -mamx-complex -mavxvnniint16 -msm3 -msha512 -msm4" } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX5124VNNIW support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "PREFETCHWT1 support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include <x86intrin.h> > > diff --git a/gcc/testsuite/gcc.target/i386/sse-13.c > b/gcc/testsuite/gcc.target/i386/sse-13.c > index 946182f0e76..2972b9f2544 100644 > --- a/gcc/testsuite/gcc.target/i386/sse-13.c > +++ b/gcc/testsuite/gcc.target/i386/sse-13.c > @@ -1,6 +1,11 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -Werror-implicit-function-declaration -march=k8 -msse4a > -m3dnow -mavx -mavx2 -mfma4 -mxop -maes -mpclmul -mpopcnt -mabm -mlzcnt -mbmi > -mbmi2 -mtbm -mlwp -mfsgsbase -mrdrnd -mf16c -mfma -mrtm -mrdseed -mprfchw > -madx -mfxsr -mxsaveopt -mavx512f -mavx512er -mavx512cd -mavx512pf -msha > -mprefetchwt1 -mxsavec -mxsaves -mclflushopt -mavx512vl -mavx512dq -mavx512bw > -mavx512vbmi -mavx512vbmi2 -mavx512ifma -mavx5124fmaps -mavx5124vnniw > -mavx512vpopcntdq -mavx512vp2intersect -mclwb -mmwaitx -mclzero -mpku -msgx > -mrdpid -mgfni -mavx512bitalg -mpconfig -mwbnoinvd -mavx512bf16 -menqcmd > -mserialize -mtsxldtrk -mamx-tile -mamx-int8 -mamx-bf16 -mkl -mwidekl > -mavxvnni -mavx512fp16 -mavxifma -mavxvnniint8 -mavxneconvert -mcmpccxadd > -mamx-fp16 -mprefetchi -mraoint -mamx-complex -mavxvnniint16 -msm3 -msha512 > -msm4" } */ > /* { dg-add-options bind_pic_locally } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX5124VNNIW support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "PREFETCHWT1 support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include <mm_malloc.h> > > diff --git a/gcc/testsuite/gcc.target/i386/sse-14.c > b/gcc/testsuite/gcc.target/i386/sse-14.c > index 0d07aadc7f8..1eb369697a3 100644 > --- a/gcc/testsuite/gcc.target/i386/sse-14.c > +++ b/gcc/testsuite/gcc.target/i386/sse-14.c > @@ -1,6 +1,11 @@ > /* { dg-do compile } */ > /* { dg-options "-O0 -Werror-implicit-function-declaration -march=k8 -msse4a > -m3dnow -mavx -mavx2 -mfma4 -mxop -maes -mpclmul -mpopcnt -mabm -mlzcnt -mbmi > -mbmi2 -mtbm -mlwp -mfsgsbase -mrdrnd -mf16c -mfma -mrtm -mrdseed -mprfchw > -madx -mfxsr -mxsaveopt -mavx512f -mavx512er -mavx512cd -mavx512pf -msha > -mprefetchwt1 -mxsavec -mxsaves -mclflushopt -mavx512dq -mavx512bw -mavx512vl > -mavx512ifma -mavx512vbmi -mavx512vbmi2 -mavx5124fmaps -mavx5124vnniw > -mavx512vpopcntdq -mclwb -mmwaitx -mclzero -mpku -msgx -mrdpid -mgfni > -mpconfig -mwbnoinvd -mavx512vl -mavx512bf16 -menqcmd -mavx512vp2intersect > -mserialize -mtsxldtrk -mamx-tile -mamx-int8 -mamx-bf16 -mkl -mwidekl > -mavxvnni -mavx512fp16 -mavxifma -mavxvnniint8 -mavxneconvert -mamx-fp16 > -mraoint -mamx-complex -mavxvnniint16 -msm3 -msha512 -msm4" } */ > /* { dg-add-options bind_pic_locally } */ > +/* { dg-warning "AVX512ER support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX512PF support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX5124FMAPS support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "AVX5124VNNIW support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > +/* { dg-warning "PREFETCHWT1 support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include <mm_malloc.h> > > diff --git a/gcc/testsuite/gcc.target/i386/sse-26.c > b/gcc/testsuite/gcc.target/i386/sse-26.c > index 04ffe10f42a..5e044b639c4 100644 > --- a/gcc/testsuite/gcc.target/i386/sse-26.c > +++ b/gcc/testsuite/gcc.target/i386/sse-26.c > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-options "-O2 -Werror-implicit-function-declaration -march=k8 -msse2 > -mmmx -mno-sse3 -mno-3dnow -mno-fma -mno-fxsr -mno-xsave -mno-rtm -mno-prfchw > -mno-rdseed -mno-adx -mno-prefetchwt1 -mno-clflushopt -mno-xsavec -mno-xsaves > -mno-clwb -mno-mwaitx -mno-clzero -mno-pku -mno-rdpid -mno-gfni -mno-shstk > -mno-vaes -mno-vpclmulqdq" } */ > /* { dg-add-options bind_pic_locally } */ > +/* { dg-warning "PREFETCHWT1 support will be removed in GCC 15" "" { target > *-*-* } 0 } */ > > #include "sse-13.c" > -- > 2.31.1 >