[PATCH 1/7] sin/cos slow paths: avoid slow paths for small inputs

Joseph Myers joseph@codesourcery.com
Thu Mar 22 22:13:00 GMT 2018


On Wed, 21 Mar 2018, Wilco Dijkstra wrote:

> This series of patches removes the slow patchs from sin, cos and sincos.
> Besides greatly simplifying the implementation, the new version is also much
> faster for inputs up to PI (41% faster) and for large inputs needing range
> reduction (27% faster).
> 
> ULP is ~0.55 with no errors found after testing 1.6 billion inputs across most
> of the range with mpsin and mpcos.  The number of incorrectly rounded results
> (ie. ULP >0.5) is at most ~2750 per million inputs between 0.125 and 0.5,
> the average is ~850 per million between 0 and PI.
> 
> Tested on AArch64 and x86_64 with no regressions.
> 
> The first patch removes the slow paths for the cases where the input is small
> and doesn't require range reduction.  Update ULP tables for sin, cos and sincos
> on AArch64 and x86_64.

OK.

-- 
Joseph S. Myers
joseph@codesourcery.com



More information about the Libc-alpha mailing list