[PATCH v2] i386: Disable Intel Xeon Phi test for GCC 15 and higher (BZ 31782)
Sam James
sam@gentoo.org
Tue May 28 00:40:05 GMT 2024
Sunil Pandey <skpgkp2@gmail.com> writes:
> Is it ok to backport this patch to older release branches?
Please do. Thank you!
>
> --Sunil
>
> On Mon, May 27, 2024 at 2:07 PM Sam James <sam@gentoo.org> wrote:
>
> "H.J. Lu" <hjl.tools@gmail.com> writes:
>
> > On Mon, May 27, 2024 at 12:42 PM Sam James <sam@gentoo.org> wrote:
> >>
> >> Sunil K Pandey <skpgkp2@gmail.com> writes:
> >>
> >> > This patch disable Intel Xeon Phi test for GCC 15 and above.
> >> >
> >> > GCC 15 removed Intel Xeon Phi ISA support.
> >> > commit e1a7e2c54d52d0ba374735e285b617af44841ace
> >> > Author: Haochen Jiang <haochen.jiang@intel.com>
> >> > Date: Mon May 20 10:43:44 2024 +0800
> >> >
> >> > i386: Remove Xeon Phi ISA support
> >> >
> >> > Fixes BZ 31782.
> >> > ---
> >> > sysdeps/x86/tst-cpu-features-supports.c | 8 +++++++-
> >> > 1 file changed, 7 insertions(+), 1 deletion(-)
> >> >
> >> > diff --git a/sysdeps/x86/tst-cpu-features-supports.c b/sysdeps/x86/tst-cpu-features-supports.c
> >> > index e270c29db7..a50afea2f9 100644
> >> > --- a/sysdeps/x86/tst-cpu-features-supports.c
> >> > +++ b/sysdeps/x86/tst-cpu-features-supports.c
> >> > @@ -65,7 +65,7 @@ do_test (int argc, char **argv)
> >> > #endif
> >> > fails += CHECK_FEATURE_ACTIVE (avx, AVX);
> >> > fails += CHECK_FEATURE_ACTIVE (avx2, AVX2);
> >> > -#if __GNUC_PREREQ (7, 0)
> >> > +#if __GNUC_PREREQ (7, 0) && !__GNUC_PREREQ (15, 0)
> >> > fails += CHECK_FEATURE_ACTIVE (avx5124fmaps, AVX512_4FMAPS);
> >> > fails += CHECK_FEATURE_ACTIVE (avx5124vnniw, AVX512_4VNNIW);
> >> > #endif
> >> > @@ -92,14 +92,18 @@ do_test (int argc, char **argv)
> >> > #if __GNUC_PREREQ (6, 0)
> >> > fails += CHECK_FEATURE_ACTIVE (avx512bw, AVX512BW);
> >> > fails += CHECK_FEATURE_ACTIVE (avx512cd, AVX512CD);
> >> > +# if !__GNUC_PREREQ (15, 0)
> >> > fails += CHECK_FEATURE_ACTIVE (avx512er, AVX512ER);
> >> > +# endif
> >> > fails += CHECK_FEATURE_ACTIVE (avx512dq, AVX512DQ);
> >> > #endif
> >> > #if __GNUC_PREREQ (5, 0)
> >> > fails += CHECK_FEATURE_ACTIVE (avx512f, AVX512F);
> >> > #endif
> >> > #if __GNUC_PREREQ (6, 0)
> >> > +# if !__GNUC_PREREQ (15, 0)
> >> > fails += CHECK_FEATURE_ACTIVE (avx512pf, AVX512PF);
> >> > +# endif
> >> > fails += CHECK_FEATURE_ACTIVE (avx512vl, AVX512VL);
> >> > #endif
> >> > #if __GNUC_PREREQ (5, 0)
> >> > @@ -148,7 +152,9 @@ do_test (int argc, char **argv)
> >> > #endif
> >> > fails += CHECK_FEATURE_ACTIVE (popcnt, POPCNT);
> >> > #if __GNUC_PREREQ (11, 0)
> >> > +# if !__GNUC_PREREQ (15, 0)
> >> > fails += CHECK_FEATURE_ACTIVE (prefetchwt1, PREFETCHWT1);
> >> > +# endif
> >>
> >> I'm sure it's fine, but to satisfy my curiosity: why are we keeping the
> >> test for this if we've ripped out the runtime support in the previous
> >> patch?
> >>
> >> My assumption (from just looking at the diff on the ML, not additional
> >> context from the source files) was that it'd fail tests with GCC 14.
> >>
> >> Or at the very least, is there really value in keeping this, even if it
> >> works?
> >
> > These CPUID feature bits won't go away. Even if their support
> > has been removed from GCC 15, they can still be used with GCC
> > 14 or older.
>
> I was wondering because of the changes in cpu-features.c, but looking
> again, I see support was retained in just one of the two tests - so that
> makes sense. Thanks.
>
> >
> >> > fails += CHECK_FEATURE_ACTIVE (ptwrite, PTWRITE);
> >> > fails += CHECK_FEATURE_ACTIVE (rdpid, RDPID);
> >> > fails += CHECK_FEATURE_ACTIVE (rdrnd, RDRAND);
More information about the Libc-alpha
mailing list