diff mbox series

[v4,3/5] math: Provided copysignf128 for static libm on alpha, s390, and sparcv9

Message ID 20240521165430.2998944-4-adhemerval.zanella@linaro.org
State New
Headers show
Series Improve libm.a static coverage | expand

Commit Message

Adhemerval Zanella Netto May 21, 2024, 4:52 p.m. UTC
Checked with a static build for the affected ABIs.
---
 sysdeps/ieee754/ldbl-64-128/s_copysignl.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

H.J. Lu May 21, 2024, 5:34 p.m. UTC | #1
On Tue, May 21, 2024 at 9:54 AM Adhemerval Zanella
<adhemerval.zanella@linaro.org> wrote:
>
> Checked with a static build for the affected ABIs.
> ---
>  sysdeps/ieee754/ldbl-64-128/s_copysignl.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sysdeps/ieee754/ldbl-64-128/s_copysignl.c b/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
> index 11b42d04ba..80137847d3 100644
> --- a/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
> +++ b/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
> @@ -1,10 +1,10 @@
>  #include <math_ldbl_opt.h>
>  #include <libm-alias-ldouble.h>
> -#if IS_IN (libc)
> +#if IS_IN (libc) && defined SHARED
>  # undef libm_alias_ldouble
>  # define libm_alias_ldouble(from, to)
>  #endif
>  #include <sysdeps/ieee754/ldbl-128/s_copysignl.c>
> -#if IS_IN (libc)
> +#if IS_IN (libc) && defined SHARED
>  long_double_symbol (libc, __copysignl, copysignl);
>  #endif
> --
> 2.43.0
>

I think you should combine copysignf128, frexpf128, modff128 patches
and also fix scalbnf128 in a single patch for:

https://sourceware.org/bugzilla/show_bug.cgi?id=31781
Adhemerval Zanella Netto May 21, 2024, 7:52 p.m. UTC | #2
On 21/05/24 14:34, H.J. Lu wrote:
> On Tue, May 21, 2024 at 9:54 AM Adhemerval Zanella
> <adhemerval.zanella@linaro.org> wrote:
>>
>> Checked with a static build for the affected ABIs.
>> ---
>>  sysdeps/ieee754/ldbl-64-128/s_copysignl.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/sysdeps/ieee754/ldbl-64-128/s_copysignl.c b/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
>> index 11b42d04ba..80137847d3 100644
>> --- a/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
>> +++ b/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
>> @@ -1,10 +1,10 @@
>>  #include <math_ldbl_opt.h>
>>  #include <libm-alias-ldouble.h>
>> -#if IS_IN (libc)
>> +#if IS_IN (libc) && defined SHARED
>>  # undef libm_alias_ldouble
>>  # define libm_alias_ldouble(from, to)
>>  #endif
>>  #include <sysdeps/ieee754/ldbl-128/s_copysignl.c>
>> -#if IS_IN (libc)
>> +#if IS_IN (libc) && defined SHARED
>>  long_double_symbol (libc, __copysignl, copysignl);
>>  #endif
>> --
>> 2.43.0
>>
> 
> I think you should combine copysignf128, frexpf128, modff128 patches
> and also fix scalbnf128 in a single patch for:
> 
> https://sourceware.org/bugzilla/show_bug.cgi?id=31781
> 

Ack, although scalbnf128 is already exported by libc.a.
H.J. Lu May 21, 2024, 8:05 p.m. UTC | #3
On Tue, May 21, 2024 at 12:52 PM Adhemerval Zanella Netto
<adhemerval.zanella@linaro.org> wrote:
>
>
>
> On 21/05/24 14:34, H.J. Lu wrote:
> > On Tue, May 21, 2024 at 9:54 AM Adhemerval Zanella
> > <adhemerval.zanella@linaro.org> wrote:
> >>
> >> Checked with a static build for the affected ABIs.
> >> ---
> >>  sysdeps/ieee754/ldbl-64-128/s_copysignl.c | 4 ++--
> >>  1 file changed, 2 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/sysdeps/ieee754/ldbl-64-128/s_copysignl.c b/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
> >> index 11b42d04ba..80137847d3 100644
> >> --- a/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
> >> +++ b/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
> >> @@ -1,10 +1,10 @@
> >>  #include <math_ldbl_opt.h>
> >>  #include <libm-alias-ldouble.h>
> >> -#if IS_IN (libc)
> >> +#if IS_IN (libc) && defined SHARED
> >>  # undef libm_alias_ldouble
> >>  # define libm_alias_ldouble(from, to)
> >>  #endif
> >>  #include <sysdeps/ieee754/ldbl-128/s_copysignl.c>
> >> -#if IS_IN (libc)
> >> +#if IS_IN (libc) && defined SHARED
> >>  long_double_symbol (libc, __copysignl, copysignl);
> >>  #endif
> >> --
> >> 2.43.0
> >>
> >
> > I think you should combine copysignf128, frexpf128, modff128 patches
> > and also fix scalbnf128 in a single patch for:
> >
> > https://sourceware.org/bugzilla/show_bug.cgi?id=31781
> >
>
> Ack, although scalbnf128 is already exported by libc.a.

The updated missing list is

copysignf128 copysignf64x frexpf128 frexpf64x modff128 modff64x
diff mbox series

Patch

diff --git a/sysdeps/ieee754/ldbl-64-128/s_copysignl.c b/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
index 11b42d04ba..80137847d3 100644
--- a/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
+++ b/sysdeps/ieee754/ldbl-64-128/s_copysignl.c
@@ -1,10 +1,10 @@ 
 #include <math_ldbl_opt.h>
 #include <libm-alias-ldouble.h>
-#if IS_IN (libc)
+#if IS_IN (libc) && defined SHARED
 # undef libm_alias_ldouble
 # define libm_alias_ldouble(from, to)
 #endif
 #include <sysdeps/ieee754/ldbl-128/s_copysignl.c>
-#if IS_IN (libc)
+#if IS_IN (libc) && defined SHARED
 long_double_symbol (libc, __copysignl, copysignl);
 #endif