Skip to content
  • Naoki Shibata's avatar
    [libsleef] Add modified Payne Hanek argument reduction (#197) · 4d5e75f6
    Naoki Shibata authored
    This patch adds a modified Payne Hanek argument reduction that can be used for very large arguments.
    
    Payne Hanek reduction algorithm can handle very large arguments by table look-ups. In this patch, a vectorized version of the algorithm is implemented. The argument range for DP and SP trig functions will become [-1e+299, 1e+299] and [-1e+28, 1e+28], respectively. In order to avoid using 64 bit or 128 bit multiplication, the algorithm is modified to use DD computation. Gather instructions are used for table look-ups. The reduction subroutine is tested to confirm that it correctly handle the worst case with 6381956970095103.0 * 2.0^797.
    4d5e75f6
To find the state of this project's repository at the time of any of these versions, check out the tags.
Loading