public inbox for newlib@sourceware.org
 help / color / mirror / Atom feed
From: Fabian Schriever <fabian.schriever@gtd-gmbh.de>
To: newlib@sourceware.org
Subject: Re: [PATCH 2/3] libm: Remove __ieee754_gamma_r variants
Date: Tue, 1 Sep 2020 18:33:30 +0200	[thread overview]
Message-ID: <3f611061-d504-dc26-29cc-dccffbe008a3@gtd-gmbh.de> (raw)
In-Reply-To: <20200828083447.GE3272@calimero.vinschen.de>

Hi Keith,

We welcome your efforts to clean up - and correct the error return 
values of - the gamma/lgamma/tgamma families.

Regarding Corinna's concern with lgamma_r/gamma_r being BSD-functions:

> You can't do  that.  gamma_r/gammaf_r/lgamma_r/lgammaf_r are BSD
> functions. They have been exported by Cygwin since 2001.  The entry
> points need  to be kept available with unchanged semantics.

We would favor the removal of all non C/POSIX(+XSI)-standard functions 
from the interface.
The reason to regard lgamma_r and gamma_r as "BSD-functions" comes from 
the fact that BSD (same as newlib) took fdlibm as the base for its libm 
back in the early 90s when some non-standard functions were part of that 
library.
We would encourage the use of only the C/POSIX(+XSI)-standard functions 
as the only way to get rid of the confusing semantics of the historical 
function interfaces otherwise the problem will only perpetuate into the 
future.

If something was changed in 2002, that is working incorrectly and no one 
found out until now, that is also not part of any standard, it suggests 
that no one is actually using it and should be able to be safely 
removed. Does Newlib have a policy to remove elements?

An interesting discussion about the standard lgamma/tgamma functions 
would be to discuss accuracy improvements in line with the glibc 
improvements from Joseph Myers (see 
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=050f29c18873ec05ba04a4034bed8cb3f6ae4463).

Best regards,
Fabian

  reply	other threads:[~2020-09-01 16:34 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-26 17:03 [PATCH 0/3] libm: Clean up gamma functions Keith Packard
2020-08-26 17:03 ` [PATCH 1/3] libm: Fix sign value returned from __ieee754_lgamma*_r(-0) Keith Packard
2020-08-26 17:03 ` [PATCH 2/3] libm: Remove __ieee754_gamma_r variants Keith Packard
2020-08-26 18:20   ` Corinna Vinschen
2020-08-26 19:10     ` Keith Packard
2020-08-27  7:24       ` Corinna Vinschen
2020-08-27 17:05         ` Keith Packard
2020-08-28  8:19           ` Corinna Vinschen
2020-08-28  8:34             ` Corinna Vinschen
2020-09-01 16:33               ` Fabian Schriever [this message]
2020-09-01 17:23                 ` Keith Packard
2020-09-02  8:03                   ` Corinna Vinschen
2020-09-02 20:37                     ` Keith Packard
2020-09-03  8:04                       ` Corinna Vinschen
2020-09-03 15:59                         ` Brian Inglis
2020-09-03 21:25                           ` Keith Packard
2020-09-03 22:09                             ` Brian Inglis
2020-09-04  0:01                               ` Keith Packard
2020-09-04  0:27                                 ` Brian Inglis
2020-09-04  1:37                                   ` Keith Packard
2020-09-04 13:03                                     ` Corinna Vinschen
2020-09-04 16:19                                       ` Keith Packard
2020-08-26 17:03 ` [PATCH 3/3] libm: Adjust errno/exception values for gamma/lgamma Keith Packard
     [not found]   ` <SN5P110MB0383012287522E8285674CAB9A550@SN5P110MB0383.NAMP110.PROD.OUTLOOK.COM>
2020-08-27 17:55     ` Fw: " C Howland
2020-08-27 19:28       ` Brian Inglis
     [not found] ` <SN5P110MB0383186ECD9B028A4B0E2ECC9A550@SN5P110MB0383.NAMP110.PROD.OUTLOOK.COM>
2020-08-27 17:43   ` Fw: [PATCH 0/3] libm: Clean up gamma functions C Howland
2020-08-27 23:59     ` Keith Packard
2020-08-28  2:03       ` Brian Inglis
2020-08-28  3:13         ` Keith Packard
2020-08-28  3:51           ` Brian Inglis
2020-08-28 17:13             ` Keith Packard
2020-08-28 18:29           ` Joseph Myers
2020-08-28 19:32             ` Keith Packard
2020-08-28 19:53               ` Joseph Myers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3f611061-d504-dc26-29cc-dccffbe008a3@gtd-gmbh.de \
    --to=fabian.schriever@gtd-gmbh.de \
    --cc=newlib@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).