This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] x86_64: Utilize vector math functions w/o -fopenmp
- From: Andrew Senkevich <andrew dot n dot senkevich at gmail dot com>
- To: Torvald Riegel <triegel at redhat dot com>
- Cc: Joseph Myers <joseph at codesourcery dot com>, libc-alpha <libc-alpha at sourceware dot org>, Kirill Yukhin <kirill dot yukhin at gmail dot com>
- Date: Fri, 18 Dec 2015 16:45:11 +0300
- Subject: Re: [PATCH] x86_64: Utilize vector math functions w/o -fopenmp
- Authentication-results: sourceware.org; auth=none
- References: <CAMXFM3tOcznwyGywfCLf1baLW6rLyUdnX1SZe6-AGh41Wb0mqA at mail dot gmail dot com> <alpine dot DEB dot 2 dot 10 dot 1512041544170 dot 29136 at digraph dot polyomino dot org dot uk> <CAMXFM3t8tH3Sd+0Uny86DoJpou554cwcxO5rHxYh+zzhj0f6Fg at mail dot gmail dot com> <1450392294 dot 26597 dot 39 dot camel at localhost dot localdomain>
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