Remove __nscd_getai prorotype.
[kopensolaris-gnu/glibc.git] / stdlib / gmp-impl.h
index 47a5d6e..85e419d 100644 (file)
@@ -5,16 +5,16 @@ Copyright (C) 1991, 1993, 1994, 1995, 1996 Free Software Foundation, Inc.
 This file is part of the GNU MP Library.
 
 The GNU MP Library is free software; you can redistribute it and/or modify
-it under the terms of the GNU Library General Public License as published by
-the Free Software Foundation; either version 2 of the License, or (at your
+it under the terms of the GNU Lesser General Public License as published by
+the Free Software Foundation; either version 2.1 of the License, or (at your
 option) any later version.
 
 The GNU MP Library is distributed in the hope that it will be useful, but
 WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
+or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
 License for more details.
 
-You should have received a copy of the GNU Library General Public License
+You should have received a copy of the GNU Lesser General Public License
 along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
 MA 02111-1307, USA. */
@@ -66,8 +66,12 @@ MA 02111-1307, USA. */
 #endif
 
 #define ABS(x) (x >= 0 ? x : -x)
+#ifndef MIN
 #define MIN(l,o) ((l) < (o) ? (l) : (o))
+#endif
+#ifndef MAX
 #define MAX(h,i) ((h) > (i) ? (h) : (i))
+#endif
 
 /* Field access macros.  */
 #define SIZ(x) ((x)->_mp_size)
@@ -299,10 +303,47 @@ typedef unsigned int UHWtype;
 #define impn_sqr_n_basecase    __MPN(impn_sqr_n_basecase)
 #define impn_sqr_n             __MPN(impn_sqr_n)
 
+#ifndef _PROTO
+#if defined (__STDC__) || defined (__cplusplus)
+#define _PROTO(x) x
+#else
+#define _PROTO(x) ()
+#endif
+#endif
+
+/* Prototypes for internal mpn calls.  */
+extern void impn_mul_n_basecase _PROTO ((mp_ptr prodp, mp_srcptr up,
+                                        mp_srcptr vp, mp_size_t size));
+extern void impn_mul_n _PROTO ((mp_ptr prodp, mp_srcptr up, mp_srcptr vp,
+                               mp_size_t size, mp_ptr tspace));
+extern void impn_sqr_n_basecase _PROTO ((mp_ptr prodp, mp_srcptr up,
+                                        mp_size_t size));
+extern void impn_sqr_n _PROTO ((mp_ptr prodp, mp_srcptr up, mp_size_t size,
+                               mp_ptr tspace));
+
+
+
 #ifndef IEEE_DOUBLE_BIG_ENDIAN
 #define IEEE_DOUBLE_BIG_ENDIAN 1
 #endif
 
+#ifndef IEEE_DOUBLE_MIXED_ENDIAN
+#define IEEE_DOUBLE_MIXED_ENDIAN 0
+#endif
+
+#if IEEE_DOUBLE_MIXED_ENDIAN
+union ieee_double_extract
+{
+  struct
+    {
+      unsigned int manh:20;
+      unsigned int exp:11;
+      unsigned int sig:1;
+      unsigned int manl:32;
+    } s;
+  double d;
+};
+#else
 #if IEEE_DOUBLE_BIG_ENDIAN
 union ieee_double_extract
 {
@@ -328,3 +369,4 @@ union ieee_double_extract
   double d;
 };
 #endif
+#endif