Re: [PATCH 0/4] Fix huge error for pow detected by Paul Zimmermann
Andoni Arregi <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Organization | GTD GmbH |
| Message-ID | <[email protected]> |
Dear Paul, thank *you* for detecting the errors/inaccuracies first (questions are as important as the answers) and then independently confirming that the patch solves them. You know how tricky this is and how easy it is to fix something here and break it there. That's why such an independent verification in addition to our tests is so important :-) By the way, most of the submitted work is product of the effort of our colleague Fabian Schriever. Best regards On Thu, 2023-04-13 at 14:16 +0200, Paul Zimmermann wrote: > Hi Andoni, > > I had time to check this patch series on top of be2749c. > > I confirm the issue I reported is fixed. > > In addition, the maximal known error, which was 636 ulps > apart from the above issue, has dropped to less than 1 ulp: > > pow 0 -1 0x1.4c3064d46aef3p-851,-0x1.cef4118ed50c2p-10 [0.893] 0.892119 0.8921192373561432 > > Thank you, great work! > > Paul > > > From: Andoni Arregi <[email protected]> > > Cc: Andoni Arregi <[email protected]> > > Date: Wed, 12 Apr 2023 17:34:41 +0200 > > > > This patch series fixes in pow the huge error detected by Paul > > Zimmermann where x is negative and y is a large odd integer. > > > > There is also an accuracy fix for cases where x is close to 1 and y is > > large. > > > > Andoni Arregi (4): > > Fix missing sign for overflow/underflow where x is negative and y is > > large odd integer > > Fix x close to 1, y between 2^31 and 2^64 > > Compare j as unsigned > > Replace always true if with else > > > > newlib/libm/math/e_pow.c | 48 +++++++++++++++++++++------------------- > > 1 file changed, 25 insertions(+), 23 deletions(-) > > > > -- > > 2.40.0 > > > > > > -- Andoni Arregi Geschäftsführer GTD GmbH Ravensburger Str. 32a, 88677 Markdorf T: +49 7544 96440 22 | M: +49 151 65620499 | F: +49 7544 96440 29 http://www.gtd-gmbh.de [email protected]