mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-10-30 10:45:40 +03:00 
			
		
		
		
	1999-10-31 Ulrich Drepper <drepper@cygnus.com> * includes/features.h: Replace __USE_ISOC9X by __USE_ISOC99 and also recognize _ISOC99_SOURCE. * libio/stdio.h: Likewise. * math/math.h: Likewise. * math/bits/mathcalls.h: Likewise. * math/stdio.h: Likewise. * stdlib/stdlib.h: Likewise. * sysdeps/alpha/fpu/bits/mathdef.h: Likewise. * sysdeps/alpha/fpu/bits/mathinline.h: Likewise. * sysdeps/arm/bits/huge_val.h: Likewise. * sysdeps/generic/bits/mathdef.h: Likewise. * sysdeps/i386/bits/huge_val.h: Likewise. * sysdeps/i386/fpu/bits/mathdef.h: Likewise. * sysdeps/i386/fpu/bits/mathinline.h: Likewise. * sysdeps/ieee754/bits/huge_val.h: Likewise. * sysdeps/m68k/bits/huge_val.h: Likewise. * sysdeps/m68k/fpu/bits/mathdef.h: Likewise. * sysdeps/m68k/fpu/bits/mathinline.h: Likewise. * sysdeps/powerpc/bits/mathdef.h: Likewise. * sysdeps/powerpc/bits/mathinline.h: Likewise. * sysdeps/sparc/fpu/bits/mathdef.h: Likewise. * sysdeps/sparc/fpu/bits/mathinline.h: Likewise. * sysdeps/sparc/sparc32/fpu/bits/huge_val.h: Likewise. * wcsmbs/wchar.h: Likewise. * sysdeps/powerpc/bits/mathdef.h: Moved to... * sysdeps/powerpc/fpu/bits/mathdef.h: ...here. * sysdeps/powerpc/bits/mathinline.h: Moved to... * sysdeps/powerpc/fpu/bits/mathinline.h: ...here. 1999-10-31 Andreas Jaeger <aj@suse.de> * manual/math.texi (Errors in Math Functions): Correct TeX code. 1999-10-31 Andreas Jaeger <aj@suse.de> * math/libm-test.inc: Change comments to use ISO C99 instead of ISO C9x. * math/w_lgamma.c: Likewise. * math/w_lgammaf.c: Likewise. * math/w_lgammal.c: Likewise. * math/test-fenv.c: Likewise. * sysdeps/ieee754/ldbl-96/printf_fphex.c: Likewise. * sysdeps/ieee754/ldbl-128/printf_fphex.c: Likewise. * sysdeps/generic/printf_fphex.c: Likewise. 1999-10-31 Andreas Jaeger <aj@suse.de> * manual/arith.texi (Parsing of Floats): Remove C from ISO C comment. * manual/math.texi: Change ISO C9x to ISO C99. * manual/startup.texi: Likewise. * manual/stdio.texi: Likewise. 1999-10-31 Andreas Jaeger <aj@suse.de> * manual/arith.texi: Change ISO C9x to ISO C99. * manual/time.texi (Low-Level Time String Parsing): Likewise.
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* @(#)w_lgamma.c 5.1 93/09/24 */
 | |
| /*
 | |
|  * ====================================================
 | |
|  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
 | |
|  *
 | |
|  * Developed at SunPro, a Sun Microsystems, Inc. business.
 | |
|  * Permission to use, copy, modify, and distribute this
 | |
|  * software is freely granted, provided that this notice
 | |
|  * is preserved.
 | |
|  * ====================================================
 | |
|  */
 | |
| 
 | |
| #if defined(LIBM_SCCS) && !defined(lint)
 | |
| static char rcsid[] = "$NetBSD: w_lgamma.c,v 1.6 1995/05/10 20:49:24 jtc Exp $";
 | |
| #endif
 | |
| 
 | |
| /* double lgamma(double x)
 | |
|  * Return the logarithm of the Gamma function of x.
 | |
|  *
 | |
|  * Method: call __ieee754_lgamma_r
 | |
|  */
 | |
| 
 | |
| #include "math.h"
 | |
| #include "math_private.h"
 | |
| 
 | |
| #ifdef __STDC__
 | |
| 	double __lgamma(double x)
 | |
| #else
 | |
| 	double __lgamma(x)
 | |
| 	double x;
 | |
| #endif
 | |
| {
 | |
| #ifdef _IEEE_LIBM
 | |
| 	return __ieee754_lgamma_r(x,&signgam);
 | |
| #else
 | |
|         double y;
 | |
| 	int local_signgam;
 | |
|         y = __ieee754_lgamma_r(x,&local_signgam);
 | |
| 	if (_LIB_VERSION != _ISOC_)
 | |
| 	  /* ISO C99 does not define the global variable.  */
 | |
| 	  signgam = local_signgam;
 | |
|         if(_LIB_VERSION == _IEEE_) return y;
 | |
|         if(!__finite(y)&&__finite(x)) {
 | |
|             if(__floor(x)==x&&x<=0.0)
 | |
|                 return __kernel_standard(x,x,15); /* lgamma pole */
 | |
|             else
 | |
|                 return __kernel_standard(x,x,14); /* lgamma overflow */
 | |
|         } else
 | |
|             return y;
 | |
| #endif
 | |
| }
 | |
| weak_alias (__lgamma, lgamma)
 | |
| strong_alias (__lgamma, __gamma)
 | |
| weak_alias (__gamma, gamma)
 | |
| #ifdef NO_LONG_DOUBLE
 | |
| strong_alias (__lgamma, __lgammal)
 | |
| weak_alias (__lgamma, lgammal)
 | |
| strong_alias (__gamma, __gammal)
 | |
| weak_alias (__gamma, gammal)
 | |
| #endif
 |