1: /* rint replacement
2:
3: Copyright (C) 2002,2007 Free Software Foundation, Inc.
4:
5: This file is part of Gforth.
6:
7: Gforth is free software; you can redistribute it and/or
8: modify it under the terms of the GNU General Public License
9: as published by the Free Software Foundation, either version 3
10: of the License, or (at your option) any later version.
11:
12: This program is distributed in the hope that it will be useful,
13: but WITHOUT ANY WARRANTY; without even the implied warranty of
14: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15: GNU General Public License for more details.
16:
17: You should have received a copy of the GNU General Public License
18: along with this program; if not, see http://www.gnu.org/licenses/.
19: */
20:
21: #ifdef i386
22: #define X (1024.*1024.*1024.*1024.*1024.*1024.*16.)
23: #else /* !defined(386) */
24: #define X (1024.*1024.*1024.*1024.*1024.*8.)
25: #endif /* !defined(386) */
26: double rint(double r)
27: {
28: if (r<0.0)
29: return (r+X)-X;
30: else
31: return (r-X)+X;
32: }
33:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>