aboutsummaryrefslogtreecommitdiff
path: root/gl/math.in.h
diff options
context:
space:
mode:
Diffstat (limited to 'gl/math.in.h')
-rw-r--r--gl/math.in.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/gl/math.in.h b/gl/math.in.h
index 6e1b9a2b..a0efefda 100644
--- a/gl/math.in.h
+++ b/gl/math.in.h
@@ -1,6 +1,6 @@
/* A GNU-like <math.h>.
- Copyright (C) 2002-2003, 2007-2008 Free Software Foundation, Inc.
+ Copyright (C) 2002-2003, 2007-2009 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -518,7 +518,8 @@ extern int gl_signbitf (float arg);
extern int gl_signbitd (double arg);
extern int gl_signbitl (long double arg);
# if __GNUC__ >= 2 && !__STRICT_ANSI__
-# if defined FLT_SIGNBIT_WORD && defined FLT_SIGNBIT_BIT
+# if defined FLT_SIGNBIT_WORD && defined FLT_SIGNBIT_BIT && !defined gl_signbitf
+# define gl_signbitf_OPTIMIZED_MACRO
# define gl_signbitf(arg) \
({ union { float _value; \
unsigned int _word[(sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)]; \
@@ -527,7 +528,8 @@ extern int gl_signbitl (long double arg);
(_m._word[FLT_SIGNBIT_WORD] >> FLT_SIGNBIT_BIT) & 1; \
})
# endif
-# if defined DBL_SIGNBIT_WORD && defined DBL_SIGNBIT_BIT
+# if defined DBL_SIGNBIT_WORD && defined DBL_SIGNBIT_BIT && !defined gl_signbitd
+# define gl_signbitd_OPTIMIZED_MACRO
# define gl_signbitd(arg) \
({ union { double _value; \
unsigned int _word[(sizeof (double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)]; \
@@ -536,7 +538,8 @@ extern int gl_signbitl (long double arg);
(_m._word[DBL_SIGNBIT_WORD] >> DBL_SIGNBIT_BIT) & 1; \
})
# endif
-# if defined LDBL_SIGNBIT_WORD && defined LDBL_SIGNBIT_BIT
+# if defined LDBL_SIGNBIT_WORD && defined LDBL_SIGNBIT_BIT && !defined gl_signbitl
+# define gl_signbitl_OPTIMIZED_MACRO
# define gl_signbitl(arg) \
({ union { long double _value; \
unsigned int _word[(sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)]; \