Hi Paul, I don't seem to have a working simulator so I built a test on my x86 linux and specified all the newlib source files needed plus a stub function to avoid needing our _malloc_r and various _r methods. The test which does tgammaf(-1) returns inf whereas glibc returns nan. I have an older gcc so it isn't the level of gcc. There are a number of gamma function patches made between 4.1.0 and 4.2.0 so one of them is likely the culprit if you believe this has regressed. -- Jeff J. On Fri, Jan 5, 2024 at 4:25 AM Paul Zimmermann wrote: > Hi Jeff, > > I did investigate. In fact I now get the issue with tgammaf even with > Newlib 4.2.0. It might be due to a change in the compiler used (I now use > gcc 13.2.0) or in my testing framework. > > Can you reproduce the issue? > > For the binary64 pow function, the accuracy has greatly improved with > respect > to 4.2.0. We got an error of up to 636 ulps, and now the largest error I > get > after a few tests is 0.892 ulp, which is better than the Intel Math Library > for this function (1.73 ulp). > > Paul > > > From: Jeff Johnston > > Date: Thu, 4 Jan 2024 13:44:27 -0500 > > Cc: newlib@sourceware.org > > > > > > [1:text/plain Show] > > > > > > [2:text/html Hide Save:noname (3kB)] > > > > Hi Paul, the problem you reported hasn't been solved yet and the > > snapshot is just a snapshot in time of the repo. > > > > Looking at the logs, I only see the following gamma change that occurs > > between 4.2.0 and 4.3.0: > > > > commit ec69debcb977d6395f9e91ee20133de473484e20 > > Author: Andoni Arregi > > Date: Fri Feb 11 12:16:00 2022 +0100 > > > > Improve lgammaf range for very small cases > > > > The original cut for small arguments at |x|<2**-70 (copied from the > > double version) produces that when computing nadj we get a subnormal > > number for t*x and thus, the division of pi/subnormal will be INF and > > the logarithm of it too, which is wrong as a result for lgammaf in > this > > range. > > The proposed new limit seems to be safe and has been tested to > > produce accurate results. > > (Courtesy of Andreas Jung, ESA) > > > > I don't think this should have caused the regression you are seeing with > -1 > > as input, but can you confirm > > if it is? Otherwise, can you use the git bisect in concert with your > test > > to determine the > > source of the regression? > > > > Thanks, > > > > -- Jeff J. > > > > On Thu, Jan 4, 2024 at 11:03 AM Paul Zimmermann < > Paul.Zimmermann@inria.fr> > > wrote: > > > > Hi Jeff, > > > > for what concerns the accuracy of math functions, the issue with huge > > error > > in pow (https://sourceware.org/pipermail/newlib/2023/020164.html) seems > > to > > have been fixed in 4.4.0, thanks! > > > > However, the regression for tgammaf(-1) with respect to 4.2.0 is still > > there: > > https://sourceware.org/pipermail/newlib/2023/020170.html. > > > > Happy New Year, > > Paul Zimmermann > > > > > From: Jeff Johnston > > > Date: Sun, 31 Dec 2023 12:23:22 -0500 > > > > > > > > > [1:text/plain Show] > > > > > > > > > [2:text/html Hide Save:noname (879B)] > > > > > > The 4.4.0 snapshot has been created and uploaded to the ftp site. For > > > details on changes, see the NEWS file. > > > > > > If there are any issues, I'll have to deal with them in the New Year. > > > > > > Thanks everyone for contributing last minute changes to handle the > > > c99/gcc-14 issues and thanks to all who made contributions/reviews > > this > > > year. Special thanks to Corinna for leading the project and reviewing > > the > > > lion's share of the code. > > > > > > Happy New Year everyone, > > > > > > -- Jeff J. > >