summaryrefslogtreecommitdiffstats
path: root/newlib/libc/include
diff options
context:
space:
mode:
authorJeff Johnston <jjohnstn@redhat.com>2007-12-19 22:20:25 +0000
committerJeff Johnston <jjohnstn@redhat.com>2007-12-19 22:20:25 +0000
commit3cc8a378d117ead86181ed4d9b440d5a59b08779 (patch)
treed121480085cdb7b25e61b7b7c1126fa09e47ed93 /newlib/libc/include
parent73063e9364ec6dc9b2e909c295969190e9626e5f (diff)
downloadcygnal-3cc8a378d117ead86181ed4d9b440d5a59b08779.tar.gz
cygnal-3cc8a378d117ead86181ed4d9b440d5a59b08779.tar.bz2
cygnal-3cc8a378d117ead86181ed4d9b440d5a59b08779.zip
2007-12-19 Dave Korn <dave.korn@artimi.com>
Jeff Johnston <jjohnstn@redhhat.com> * libc/include/_ansi.h: Add _LONG_LONG definition. * libc/include/math.h (llrint, llrintf, rintl, lrintl, llrintl): Add prototypes. * libc/machine/i386/machine/fastmath.h: Add support for new i386 fast math versions of rint, lrint, and llrint family functions. * libm/machine/i386/Makefile.am: Add new files. * libm/machine/i386/Makefile.in: Regenerated. * libm/machine/i386/f_llrint.c, libm/machine/i386/f_lrint.c, libm/machine/i386/f_rint.c, libm/machine/i386/f_llrintf.c, libm/machine/i386/f_lrintf.c, libm/machine/i386/f_rintf.c, libm/machine/i386/f_llrintl.c, libm/machine/i386/f_lrintl.c, libm/machine/i386/f_rintl.c: New files with fast math implementations.
Diffstat (limited to 'newlib/libc/include')
-rw-r--r--newlib/libc/include/_ansi.h4
-rw-r--r--newlib/libc/include/math.h7
2 files changed, 11 insertions, 0 deletions
diff --git a/newlib/libc/include/_ansi.h b/newlib/libc/include/_ansi.h
index 07bfd88eb..b84f37791 100644
--- a/newlib/libc/include/_ansi.h
+++ b/newlib/libc/include/_ansi.h
@@ -45,6 +45,9 @@
#ifndef _LONG_DOUBLE
#define _LONG_DOUBLE long double
#endif
+#ifndef _LONG_LONG
+#define _LONG_LONG long long
+#endif
#ifndef _PARAMS
#define _PARAMS(paramlist) paramlist
#endif
@@ -62,6 +65,7 @@
#define _DEFUN_VOID(name) name()
#define _CAST_VOID
#define _LONG_DOUBLE double
+#define _LONG_LONG long
#ifndef _PARAMS
#define _PARAMS(paramlist) ()
#endif
diff --git a/newlib/libc/include/math.h b/newlib/libc/include/math.h
index 9f9fe1b18..3f7001a0c 100644
--- a/newlib/libc/include/math.h
+++ b/newlib/libc/include/math.h
@@ -226,6 +226,7 @@ extern double scalbln _PARAMS((double, long int));
extern double tgamma _PARAMS((double));
extern double nearbyint _PARAMS((double));
extern long int lrint _PARAMS((double));
+extern _LONG_LONG int llrint _PARAMS((double));
extern double round _PARAMS((double));
extern long int lround _PARAMS((double));
extern double trunc _PARAMS((double));
@@ -292,6 +293,7 @@ extern float scalblnf _PARAMS((float, long int));
extern float tgammaf _PARAMS((float));
extern float nearbyintf _PARAMS((float));
extern long int lrintf _PARAMS((float));
+extern _LONG_LONG llrintf _PARAMS((float));
extern float roundf _PARAMS((float));
extern long int lroundf _PARAMS((float));
extern float truncf _PARAMS((float));
@@ -330,6 +332,11 @@ extern float erfcf _PARAMS((float));
extern float hypotf _PARAMS((float, float));
#endif /* ! defined (_REENT_ONLY) */
+/* Other long double precision functions. */
+extern _LONG_DOUBLE rintl _PARAMS((_LONG_DOUBLE));
+extern long int lrintl _PARAMS((_LONG_DOUBLE));
+extern _LONG_LONG llrintl _PARAMS((_LONG_DOUBLE));
+
#endif /* !defined (__STRICT_ANSI__) || defined(__cplusplus) || __STDC_VERSION__ >= 199901L */
#if !defined (__STRICT_ANSI__) || defined(__cplusplus)