[PATCH] x86-64: Add sinf with FMA

H.J. Lu hjl.tools@gmail.com
Thu Dec 7 18:13:00 GMT 2017


On Thu, Dec 7, 2017 at 4:20 AM, Adhemerval Zanella
<adhemerval.zanella@linaro.org> wrote:
>
>
> On 05/12/2017 17:03, H.J. Lu wrote:
>> diff --git a/sysdeps/x86_64/fpu/multiarch/s_sinf.c b/sysdeps/x86_64/fpu/multiarch/s_sinf.c
>> new file mode 100644
>> index 0000000000..f91f866cdc
>> --- /dev/null
>> +++ b/sysdeps/x86_64/fpu/multiarch/s_sinf.c
>> @@ -0,0 +1,31 @@
>> +/* Multiple versions of sinf.
>> +   Copyright (C) 2017 Free Software Foundation, Inc.
>> +   This file is part of the GNU C Library.
>> +
>> +   The GNU C Library is free software; you can redistribute it and/or
>> +   modify it under the terms of the GNU Lesser General Public
>> +   License as published by the Free Software Foundation; either
>> +   version 2.1 of the License, or (at your option) any later version.
>> +
>> +   The GNU C Library is distributed in the hope that it will be useful,
>> +   but WITHOUT ANY WARRANTY; without even the implied warranty of
>> +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
>> +   Lesser General Public License for more details.
>> +
>> +   You should have received a copy of the GNU Lesser General Public
>> +   License along with the GNU C Library; if not, see
>> +   <http://www.gnu.org/licenses/>.  */
>> +
>> +#include <libm-alias-float.h>
>> +
>> +extern float __redirect_sinf (float);
>> +
>> +#define SYMBOL_NAME sinf
>> +#include "ifunc-fma.h"
>> +
>> +libc_ifunc_redirected (__redirect_sinf, __sinf, IFUNC_SELECTOR ());
>> +
>> +libm_alias_float (__sin, sin)
>> +
>> +#define SINF __sinf_sse2
>> +#include <sysdeps/ieee754/flt-32/s_sinf.c>
>> -- 2.14.3
>
> I would prefer if we move the default version to specific files instead
> of incorporate them on ifunc resolver itself.  In this case add a
> sysdeps/x86_64/fpu/multiarch/s_sinf-sse2.c file with:
>
> #define SINF __sinf_sse2
> #include <sysdeps/ieee754/flt-32/s_sinf.c>
>
> LGTM with this change.

This is what I am checking in.

Thanks.

-- 
H.J.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-x86-64-Add-sinf-with-FMA.patch
Type: text/x-patch
Size: 5099 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20171207/4002da66/attachment.bin>


More information about the Libc-alpha mailing list