https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82004

--- Comment #11 from rguenther at suse dot de <rguenther at suse dot de> ---
On Mon, 11 Sep 2017, wilco at gcc dot gnu.org wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82004
> 
> Wilco <wilco at gcc dot gnu.org> changed:
> 
>            What    |Removed                     |Added
> ----------------------------------------------------------------------------
>                  CC|                            |wilco at gcc dot gnu.org
> 
> --- Comment #10 from Wilco <wilco at gcc dot gnu.org> ---
> Using latest GLIBC, exp(log(10),-3) is only 3ULP different from 0.001. Since
> (double)0.001 is rounded up, any <1ULP POW implementation could round down and
> fail the test. So yes the first element in chlcnc really needs to be fixed to
> 0.00099999999999999 to allow for a few ULP of error in POW.
> 
> > As a last resort we can always choose to not touch 10**x
> 
> Unfortunately almost all useful cases are 10**x... So it would be great if we
> can allow use of exp10 and exp2 to get more accurate results. This requires a
> real implementation in GLIBC, and a way to disable it. Would it be feasible to
> add a exp10 symbol to libgcc/libgfortran in case the math libraries don't
> support it?

Not sure, it depends on whether we can make sure libm is prefered over
libgfortran.  Maybe we have existing cases in libgfortran already.

Reply via email to