glibc/sysdeps/generic/w_sqrtf.c
Andreas Schwab b3ed821981 1999-07-19 Andreas Schwab <schwab@suse.de>
* libio/Makefile (routines): Add fwprintf.

	PowerPC has own version of w_sqrt.c and w_sqrtf.c.
	* math/w_sqrt.c: Moved to ...
	* sysdeps/generic/w_sqrt.c: ... here.
	* math/w_sqrtf.c: Moved to ...
	* sysdeps/generic/w_sqrtf.c: ... here.

	* Make-dist (generic-dirs): New variable.
	(try-sysdeps, +sysdep-names): Use it.
	* extra-lib.mk (all-$(lib)-routines): New variable.  Use it
	instead of $(lib)-routines.
	* elf/Makefile (distribute): Add dl-cache.h.
	* db2/Makefile (distribute): Add all new files.
	* iconvdata/Makefile (distribute): Don't distribute CVS
	directory.
	* math/Makefile (distribute): Remove machine/endian.h, add
	math_ldbl.h.
	* stdio-common/Makefile (distribute): Add _itowa.h.
	* sysdeps/generic/Dist: Remove make_siglist.c, add siglist.h.
	* sysdeps/gnu/Dist: Add eval.c
	* sysdeps/gnu/Makefile (libdl-sysdep_routines) [$(subdir) =
	dlfcn]: Add to this instead of libdl-routines.
	* sysdeps/ieee754/ldbl-128/Dist: New file.
	* sysdeps/mach/hurd/Dist: Add siglist.h
	* sysdeps/unix/sysv/linux/Dist: Add kernel-features.h.
1999-07-20 08:19:37 +00:00

48 lines
1.1 KiB
C

/* w_sqrtf.c -- float version of w_sqrt.c.
* Conversion to float by Ian Lance Taylor, Cygnus Support, ian@cygnus.com.
*/
/*
* ====================================================
* 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_sqrtf.c,v 1.3 1995/05/10 20:49:59 jtc Exp $";
#endif
/*
* wrapper sqrtf(x)
*/
#include "math.h"
#include "math_private.h"
#ifdef __STDC__
float __sqrtf(float x) /* wrapper sqrtf */
#else
float sqrt(x) /* wrapper sqrtf */
float x;
#endif
{
#ifdef _IEEE_LIBM
return __ieee754_sqrtf(x);
#else
float z;
z = __ieee754_sqrtf(x);
if(_LIB_VERSION == _IEEE_ || __isnanf(x)) return z;
if(x<(float)0.0) {
/* sqrtf(negative) */
return (float)__kernel_standard((double)x,(double)x,126);
} else
return z;
#endif
}
weak_alias (__sqrtf, sqrtf)