]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - sysdeps/ia64/fpu/w_lgammaf_main.c
Fix lgamma setting signgam for ISO C (bug 15421).
[thirdparty/glibc.git] / sysdeps / ia64 / fpu / w_lgammaf_main.c
similarity index 86%
rename from sysdeps/ia64/fpu/w_lgammaf.c
rename to sysdeps/ia64/fpu/w_lgammaf_main.c
index cd0b4f666605d9628d5769788d5de8f52eea3974..d8e86a6f257544cbce7e5e8938b2c36cdfff6b5c 100644 (file)
 
 #include "libm_support.h"
 
+#include <lgamma-compat.h>
 
 extern float  __libm_lgammaf(float /*x*/, int* /*signgam*/, int /*signgamsz*/);
 
 
-float __ieee754_lgammaf(float x)
+float LGFUNC (lgammaf) (float x)
 {
-#ifdef __POSIX__
-    extern int    signgam;
-#else
-    int    signgam;
-#endif
-    return __libm_lgammaf(x, &signgam, sizeof(signgam));
+    return CALL_LGAMMA (float, __libm_lgammaf, x);
 }
-weak_alias (__ieee754_lgammaf, lgammaf)
-
-float __ieee754_gammaf(float x)
-{
-#ifdef __POSIX__
-    extern int    signgam;
+#if USE_AS_COMPAT
+compat_symbol (libm, __lgammaf_compat, lgammaf, LGAMMA_OLD_VER);
 #else
-    int    signgam;
+versioned_symbol (libm, __ieee754_lgammaf, lgammaf, LGAMMA_NEW_VER);
 #endif
-    return __libm_lgammaf(x, &signgam, sizeof(signgam));
-}
+#if GAMMA_ALIAS
+strong_alias (LGFUNC (lgammaf), __ieee754_gammaf)
 weak_alias (__ieee754_gammaf, gammaf)
+#endif