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

Andrew Senkevich andrew.n.senkevich@gmail.com
Fri Dec 18 13:45:00 GMT 2015


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?


--
WBR,
Andrew



More information about the Libc-alpha mailing list