[PATCH] x86_64: Utilize vector math functions w/o -fopenmp

Torvald Riegel triegel@redhat.com
Fri Dec 18 19:16:00 GMT 2015


On Fri, 2015-12-18 at 20:20 +0300, Andrew Senkevich wrote:
> 2015-12-18 18:29 GMT+03:00 Torvald Riegel <triegel@redhat.com>:
> > On Fri, 2015-12-18 at 16:45 +0300, Andrew Senkevich wrote:
> >> 2015-12-18 1:44 GMT+03:00 Torvald Riegel <triegel@redhat.com>:
> >> > On Fri, 2015-12-04 at 20:27 +0300, Andrew Senkevich wrote:
> >> >> 2015-12-04 18:46 GMT+03:00 Joseph Myers <joseph@codesourcery.com>:
> >> >> diff --git a/sysdeps/x86/fpu/bits/math-vector.h
> >> >> b/sysdeps/x86/fpu/bits/math-vector.h
> >> >> index f3bfb86..13d720e 100644
> >> >> --- a/sysdeps/x86/fpu/bits/math-vector.h
> >> >> +++ b/sysdeps/x86/fpu/bits/math-vector.h
> >> >> @@ -28,6 +28,12 @@
> >> >>  # if defined _OPENMP && _OPENMP >= 201307
> >> >>  /* OpenMP case.  */
> >> >>  #  define __DECL_SIMD_x86_64 _Pragma ("omp declare simd notinbranch")
> >> >> +# elif __GNUC_PREREQ (6,0)
> >> >> +/* W/o OpenMP use GCC 6.* __attribute__((__simd__)).  */
> >> >> +#  define __DECL_SIMD_x86_64 __attribute__((__simd__("notinbranch")))
> >> >> +# endif
> >> >> +
> >> >> +# ifdef __DECL_SIMD_x86_64
> >> >>  #  undef __DECL_SIMD_cos
> >> >>  #  define __DECL_SIMD_cos __DECL_SIMD_x86_64
> >> >>  #  undef __DECL_SIMD_cosf
> >> >
> >> > I believe this might be what breaks a build on a recent GCC:
> >> >
> >> > ../math/bits/mathcalls.h:63:1: error: wrong number of arguments
> >> > specified for ‘__simd__’ attribute
> >> >  __MATHCALL_VEC (cos,, (_Mdouble_ __x));
> >> >
> >> > Or perhaps GCC has a bug.  Could somebody have a look please?
> >>
> >> Hi,
> >>
> >> do you use trunk GCC?
> >
> > Yes, "recent GCC" was supposed to mean GCC trunk from yesterday or so.

I take that back.  The GCC build I used was somewhat older.  I can't
reproduce the glibc build problem with a build of today's GCC trunk
anymore, I think.  I get a different glibc build problem, but in a test
that is later than math/ I believe.

Sorry for the noise.



More information about the Libc-alpha mailing list