glibc/sysdeps/sparc/sparc32
Joseph Myers 81dca813cc Use copysign functions not __copysign functions in glibc libm.
Continuing the move to use, within libm, public names for libm
functions that can be inlined as built-in functions on many
architectures, this patch moves calls to __copysign functions to call
the corresponding copysign names instead, with asm redirection to
__copysign when the calls are not inlined (all cases are inlined
except for IBM long double for powerpc soft-float / e500v1).  This
eliminates the need for an inline function defining __copysign in
terms of __builtin_copysign.

Tested for x86_64, and with build-many-glibcs.py.

	* include/math.h [!_ISOMAC && !(__FINITE_MATH_ONLY__ &&
	__FINITE_MATH_ONLY__ > 0) && !NO_MATH_REDIRECT]
	(MATH_REDIRECT_BINARY_ARGS): New macro.
	[!_ISOMAC && !(__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0)
	&& !NO_MATH_REDIRECT] (copysign): Redirect using MATH_REDIRECT.
	* sysdeps/alpha/fpu/s_copysign.c: Define NO_MATH_REDIRECT before
	header inclusion.
	* sysdeps/alpha/fpu/s_copysignf.c: Likewise.
	* sysdeps/ieee754/dbl-64/s_copysign.c: Likewise.
	* sysdeps/ieee754/float128/s_copysignf128.c: Likewise.
	* sysdeps/ieee754/flt-32/s_copysignf.c: Likewise.
	* sysdeps/ieee754/ldbl-128/s_copysignl.c: Likewise.
	* sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Likewise.
	* sysdeps/ieee754/ldbl-96/s_copysignl.c: Likewise.
	* sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign.c:
	Likewise.
	* sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysignf.c:
	Likewise.
	* sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign.c: Likewise.
	* sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysignf.c: Likewise.
	* sysdeps/riscv/rvd/s_copysign.c: Likewise.
	* sysdeps/riscv/rvf/s_copysignf.c: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.c:
	Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.c:
	Likewise.
	* sysdeps/generic/math_private_calls.h
	[!__MATH_DECLARING_LONG_DOUBLE || !NO_LONG_DOUBLE] (__copysign):
	Do not declare and define as an inline function.
	* math/divtc3.c (__divtc3): Use copysign functions instead of
	__copysign variants.
	* math/multc3.c (__multc3): Likewise.
	* sysdeps/generic/math-type-macros.h (M_COPYSIGN): Likewise.
	* sysdeps/ieee754/dbl-64/e_atan2.c (signArctan2): Likewise.
	* sysdeps/ieee754/dbl-64/e_atanh.c (__ieee754_atanh): Likewise.
	* sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r):
	Likewise.
	* sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_jn): Likewise.
	(__ieee754_yn): Likewise.
	* sysdeps/ieee754/dbl-64/s_asinh.c (__asinh): Likewise.
	* sysdeps/ieee754/dbl-64/s_atan.c (__signArctan): Likewise.
	* sysdeps/ieee754/dbl-64/s_scalbln.c (__scalbln): Likewise.
	* sysdeps/ieee754/dbl-64/s_scalbn.c (__scalbn): Likewise.
	* sysdeps/ieee754/dbl-64/s_sin.c (do_sin): Likewise.
	(__sin): Likewise.
	* sysdeps/ieee754/dbl-64/s_sincos.c (__sincos): Likewise.
	* sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c (__nearbyint):
	Likewise.
	* sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c (__scalbln):
	Likewise.
	* sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c (__scalbn):
	Likewise.
	* sysdeps/ieee754/flt-32/e_atanhf.c (__ieee754_atanhf): Likewise.
	* sysdeps/ieee754/flt-32/e_gammaf_r.c (__ieee754_gammaf_r):
	Likewise.
	* sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_jnf): Likewise.
	(__ieee754_ynf): Likewise.
	* sysdeps/ieee754/flt-32/s_asinhf.c (__asinhf): Likewise.
	* sysdeps/ieee754/flt-32/s_scalbnf.c (__scalbnf): Likewise.
	* sysdeps/ieee754/k_standard.c (__kernel_standard): Likewise.
	* sysdeps/ieee754/ldbl-128/e_gammal_r.c (__ieee754_gammal_r):
	Likewise.
	* sysdeps/ieee754/ldbl-128/e_jnl.c (__ieee754_jnl): Likewise.
	(__ieee754_ynl): Likewise.
	* sysdeps/ieee754/ldbl-128/s_scalblnl.c (__scalblnl): Likewise.
	* sysdeps/ieee754/ldbl-128/s_scalbnl.c (__scalbnl): Likewise.
	* sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (__ieee754_gammal_r):
	Likewise.
	* sysdeps/ieee754/ldbl-128ibm/e_jnl.c (__ieee754_jnl): Likewise.
	(__ieee754_ynl): Likewise.
	* sysdeps/ieee754/ldbl-128ibm/s_fmal.c (__fmal): Likewise.
	* sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c (__scalblnl): Likewise.
	* sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c (__scalbnl): Likewise.
	* sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
	Likewise.
	* sysdeps/ieee754/ldbl-96/e_jnl.c (__ieee754_jnl): Likewise.
	(__ieee754_ynl)
	* sysdeps/ieee754/ldbl-96/s_asinhl.c (__asinhl): Likewise.
	* sysdeps/ieee754/ldbl-96/s_scalblnl.c (__scalblnl): Likewise.
	* sysdeps/ieee754/ldbl-opt/nldbl-copysign.c (copysignl): Likewise.
	* sysdeps/powerpc/power5+/fpu/s_modf.c (__modf): Likewise.
	* sysdeps/powerpc/power5+/fpu/s_modff.c (__modff): Likewise.
2018-09-27 20:04:48 +00:00
..
bits Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
fpu Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
sparcv8 Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
sparcv9 Use copysign functions not __copysign functions in glibc libm. 2018-09-27 20:04:48 +00:00
__longjmp.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
add_n.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
addmul_1.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
alloca.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
atomic-machine.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
backtrace.h
bsd-_setjmp.S
bsd-setjmp.S
bzero.c
divrem.m4 Update SPARC divrem generation to match output. 2017-12-15 14:06:07 +00:00
dl-irel.h [BZ #20271] Add newlines in __libc_fatal calls. 2018-08-31 18:04:32 -07:00
dl-machine.h elf: Unify symbol address run-time calculation [BZ #19818] 2018-04-04 23:09:37 +01:00
dl-plt.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
dl-trampoline.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
dotmul.S
e_sqrt.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
ieee754.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
Implies Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
jmpbuf-offsets.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
lll_timedlock_wait.c
lll_timedwait_tid.c
lowlevellock.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
lshift.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
Makefile Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
memchr.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
memcpy.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
memset.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
mul_1.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
pthread_barrier_wait.c
pthread_spin_lock.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
pthread_spin_trylock.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
pthreaddef.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
q_add.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_cmp.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_cmpe.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_div.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_dtoq.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_feq.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_fge.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_fgt.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_fle.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_flt.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_fne.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_itoq.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_lltoq.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_mul.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_neg.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_qtod.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_qtoi.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_qtoll.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_qtos.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_qtou.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_qtoull.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_sqrt.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_stoq.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_sub.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_ulltoq.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_util.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
q_utoq.c Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
rem.S Update SPARC divrem generation to match output. 2017-12-15 14:06:07 +00:00
rshift.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
sdiv.S Update SPARC divrem generation to match output. 2017-12-15 14:06:07 +00:00
sem_post.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
sem_waitcommon.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
setjmp.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
sfp-machine.h Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00
stackguard-macros.h
start.S sparc: Check PIC instead of SHARED in start.S [BZ #22638] 2018-02-05 05:46:56 -08:00
stpcpy.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
strcat.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
strchr.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
strcmp.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
strcpy.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
strlen.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
strrchr.c
sub_n.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
submul_1.S Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tls-macros.h
tst-audit.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
udiv.S Update SPARC divrem generation to match output. 2017-12-15 14:06:07 +00:00
umul.S
urem.S Update SPARC divrem generation to match output. 2017-12-15 14:06:07 +00:00
Versions Remove sysdeps/sparc/sparc32/soft-fp directory. 2018-05-25 16:51:15 +00:00