X-Git-Url: https://git.hcoop.net/bpt/emacs.git/blobdiff_plain/2ab329f3b5d52a39f0a45c3d9c129f1c19560142..1bb1e03834c6755b42a6404aa3d2832c38c3981e:/src/floatfns.c diff --git a/src/floatfns.c b/src/floatfns.c index 4fe209fcb6..43576a1624 100644 --- a/src/floatfns.c +++ b/src/floatfns.c @@ -1,7 +1,7 @@ /* Primitive operations on floating point for GNU Emacs Lisp interpreter. -Copyright (C) 1988, 1993-1994, 1999, 2001-2012 - Free Software Foundation, Inc. +Copyright (C) 1988, 1993-1994, 1999, 2001-2013 Free Software Foundation, +Inc. Author: Wolfgang Rupprecht (according to ack.texi) @@ -31,15 +31,6 @@ along with GNU Emacs. If not, see . */ #include #include "lisp.h" -#include "syssignal.h" - -#include -#if (FLT_RADIX == 2 && FLT_MANT_DIG == 24 \ - && FLT_MIN_EXP == -125 && FLT_MAX_EXP == 128) -#define IEEE_FLOATING_POINT 1 -#else -#define IEEE_FLOATING_POINT 0 -#endif #include @@ -408,8 +399,8 @@ round2 (EMACS_INT i1, EMACS_INT i2) odd. */ EMACS_INT q = i1 / i2; EMACS_INT r = i1 % i2; - EMACS_INT abs_r = r < 0 ? -r : r; - EMACS_INT abs_r1 = (i2 < 0 ? -i2 : i2) - abs_r; + EMACS_INT abs_r = eabs (r); + EMACS_INT abs_r1 = eabs (i2) - abs_r; return q + (abs_r + (q & 1) <= abs_r1 ? 0 : (i2 ^ r) < 0 ? -1 : 1); }