On 10 February 2012 14:05, Andrew Haley <a...@redhat.com> wrote:
> On 02/10/2012 01:30 PM, James Courtier-Dutton wrote:
>> On 10 February 2012 10:42, Andrew Haley <a...@redhat.com> wrote:
>>
>> I think a starting point would be at least documenting correctly the
>> accuracy of the current libm, because what is currently in the
>> documents is obviously wrong.
>> It certainly does not document that sin() is currently more accurate
>> than sinl() on x86_64 platforms, even with -O0.
>
> It isn't.
>
>  cout << scientific << setprecision(20) << sin(0.5) << "\n";
>  cout << scientific << setprecision(20) << sinl(0.5) << "\n";
>  cout << Sin(Real("0.5")).toString(20,10) << "\n";
>
> gives:
>
> 4.79425538604203005377e-01
> 4.79425538604203000282e-01
> 4.79425538604203000273e-01
>
> The last one is from MPFR.
>
> In most cases you'll get more accurate results from sinl().
>

but if you replace 0.5 with 1.0e22 ?

Reply via email to