glibc/sysdeps/mips
Joseph Myers 34cb304e5a Fix mips16 __fpu_control static linking (bug 18397).
Programs are supposed to be able to define the __fpu_control variable,
overriding the library's version to cause the floating-point control
word to be set to the chosen value at startup.

This is broken for mips16 for static linking because the library's
__fpu_control variable is in the same object file as the helper
functions used by fpu_control.h for mips16, so test-fpucw-ieee-static
fails to link with multiple definitions of __fpu_control.

This patch fixes this by putting the helpers in a separate file rather
than overriding fpu_control.c.  Tested for mips16 that this fixes the
link failure and the ABI tests still pass.

	[BZ #18397]
	* sysdeps/mips/mips32/fpu/fpu_control.c: Move to ....
	* sysdeps/mips/mips32/fpu/fpucw-helpers.c: ... here.  Include
	<fpu_control.h> instead of <math/fpu_control.c>.
	* sysdeps/mips/mips32/fpu/Makefile: New file.
2015-05-11 22:58:10 +00:00
..
bits
fpu
ieee754
include/sys
mips32
mips64
nptl
sys
__longjmp.c
abort-instr.h
add_n.S
addmul_1.S
backtrace.c
bsd-_setjmp.S
bsd-setjmp.S
configure
configure.ac
dl-dtprocnum.h
dl-machine-reject-phdr.h
dl-machine.h
dl-procinfo.c
dl-procinfo.h
dl-tls.h
dl-trampoline.c
fpregdef.h
fpu_control.h
gccframe.h
Implies
jmpbuf-unwind.h
ldsodefs.h
libc-tls.c
lshift.S
machine-gmon.h
Makefile
math_private.h
math-tests.h
memcpy.S
memset.S
memusage.h
mul_1.S
preconfigure
regdef.h
rshift.S
setjmp_aux.c
setjmp.S
sgidefs.h
sotruss-lib.c
stackinfo.h
start.S
strcmp.S
sub_n.S
submul_1.S
tininess.h
tls-macros.h
tst-abi-fp32mod.c
tst-abi-fp64amod.c
tst-abi-fp64mod.c
tst-abi-fpxxmod.c
tst-abi-fpxxomod.c
tst-abi-interlink.c
tst-audit.h
tst-mode-switch-1.c
tst-mode-switch-2.c
tst-mode-switch-3.c