+2016-08-04 Joseph Myers <joseph@codesourcery.com>
+
+ * math/e_scalb.c: Do not include <fenv.h>.
+ (invalid_fn): Do calculation resulting in NaN instead of raising
+ FE_INVALID and returning a NaN explicitly.
+ * math/e_scalbf.c: Do not include <fenv.h>.
+ (invalid_fn): Do calculation resulting in NaN instead of raising
+ FE_INVALID and returning a NaN explicitly.
+ * math/e_scalbl.c: Do not include <fenv.h>.
+ (invalid_fn): Do calculation resulting in NaN instead of raising
+ FE_INVALID and returning a NaN explicitly.
+
2016-08-04 Carlos O'Donell <carlos@redhat.com>
* po/de.po: Updated from Translation Project.
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <fenv.h>
#include <math.h>
#include <math_private.h>
invalid_fn (double x, double fn)
{
if (__rint (fn) != fn)
- {
- __feraiseexcept (FE_INVALID);
- return __nan ("");
- }
+ return (fn - fn) / (fn - fn);
else if (fn > 65000.0)
return __scalbn (x, 65000);
else
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <fenv.h>
#include <math.h>
#include <math_private.h>
invalid_fn (float x, float fn)
{
if (__rintf (fn) != fn)
- {
- feraiseexcept (FE_INVALID);
- return __nan ("");
- }
+ return (fn - fn) / (fn - fn);
else if (fn > 65000.0f)
return __scalbnf (x, 65000);
else
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <fenv.h>
#include <math.h>
#include <math_private.h>
invalid_fn (long double x, long double fn)
{
if (__rintl (fn) != fn)
- {
- feraiseexcept (FE_INVALID);
- return __nan ("");
- }
+ return (fn - fn) / (fn - fn);
else if (fn > 65000.0L)
return __scalbnl (x, 65000);
else