{"push_id":2724584790,"size":1,"distinct_size":1,"ref":"refs/heads/svn_head","head":"6222067d663e9b3e1db909455453c00f63b4f245","before":"8be088c139fc13e9d5003d63c553d8c943770978","commits":[{"sha":"6222067d663e9b3e1db909455453c00f63b4f245","author":{"name":"bde","email":"2850c642427bff2171188520f6f3d1c88a2773c8@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f"},"message":"Add a macro nan_mix() and use it to get NaN results that are (bitwise)\nindependent of the precision in most cases.  This is mainly to simplify\nchecking for errors.  r176266 did this for e_pow[f].c using a less\nrefined expression that often didn't work.  r176276 fixes an error in\nthe log message for r176266.  The main refinement is to always expand\nto long double precision.  See old log messages (especially these 2)\nand the comment on the macro for more general details.\n\nSpecific details:\n- using nan_mix() consistently for the new and old pow*() functions was\n  the only thing needed to make my consistency test for powl() vs pow()\n  pass on amd64.\n\n- catrig[fl].c already had all the refinements, but open-coded.\n\n- e_atan2[fl].c, e_fmod[fl].c and s_remquo[fl] only had primitive NaN\n  mixing.\n\n- e_hypot[fl].c already had a different refined version of r176266.  Refine\n  this further.  nan_mix() is not directly usable here since we want to\n  clear the sign bit.\n\n- e_remainder[f].c already had an earlier version of r176266.\n\n- s_ccosh[f].c,/s_csinh[f].c already had a version equivalent to r176266.\n  Refine this further.  nan_mix() is not directly usable here since the\n  expression has to handle some non-NaN cases.\n\n- s_csqrt.[fl]: the mixing was special and mostly wrong.  Partially fix the\n  special version.\n\n- s_ctanh[f].c already had a version of r176266.\n\n\ngit-svn-id: svn+ssh://svn.freebsd.org/base/head@336362 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f","distinct":true,"url":"https://api.github.com/repos/freebsd/freebsd/commits/6222067d663e9b3e1db909455453c00f63b4f245"}]}
{"actor":{"display_login":"uqs"}}