glibc/sysdeps
Stefan Liebler 5d96fe8c0d S390: Fix handling of DXC-byte in FPC-register.
On s390, the DXC(data-exception-code)-byte in FPC(floating-point-control)-
register contains a code of the last occured exception.
If bits 6 and 7 of DXC-byte are zero, the bits 0-5 correspond to the
ieee-exception flag bits.
The current implementation always uses these bits as ieee-exception flag bits.
fetestexcept() reports any exception after the first usage of a
vector-instruction in a process, because it raises an "vector instruction
exception" with DXC-code 0xFE.
This patch fixes the handling of the DXC-byte. The DXC-Byte is only handled
if bits 6 and 7 are zero.

The #define _FPU_RESERVED is extended by the DXC-Byte.
Otherwise the tests math/test-fpucw-static and math/test-fpucw-ieee-static
fails, because DXC-Byte contains the vector instruction exception when reaching
main(). This exception was triggered by strrchr() call in __init_misc().
__init_misc() is called after __setfpucw () in __libc_init_first().

The field __ieee_instruction_pointer in struct fenv_t is renamed to __unused
because it is a relict from commit "Remove PTRACE_PEEKUSER"
(87b9b50f0d) and isn´t used anymore.

ChangeLog:

	[BZ #18610]
	* sysdeps/s390/fpu/bits/fenv.h (fenv_t): Rename
	__ieee_instruction_pointer to __unused.
	* sysdeps/s390/fpu/fesetenv.c (__fesetenv): Remove usage of
	__ieee_instruction_pointer.
	* sysdeps/s390/fpu/fclrexcpt.c (feclearexcept): Fix dxc-field handling.
	* sysdeps/s390/fpu/fgetexcptflg.c (fegetexceptflag): Likewise.
	* sysdeps/s390/fpu/fsetexcptflg.c (fesetexceptflag): Likewise.
	* sysdeps/s390/fpu/ftestexcept.c (fetestexcept): Likewise.
	* sysdeps/s390/fpu/fpu_control.h (_FPU_RESERVED):
	Mark dxc-field as reserved.
2015-08-26 10:26:18 +02:00
..
aarch64 2015-08-24 Wilco Dijkstra <wdijkstr@arm.com> 2015-08-24 14:49:46 +01:00
alpha alpha: Update libm-test-ulps 2015-05-19 09:43:54 -07:00
arm Fix BZ #18084 -- backtrace (..., 0) dumps core on x86. 2015-08-15 11:42:43 -07:00
generic Factor file identity rules out of generic rtld code. 2015-07-14 13:15:26 -07:00
gnu hurd: fix unwind-resume.c build 2015-02-08 18:46:00 +01:00
hppa hppa: start.S: rework references to fix PIE TEXTRELs [BZ #18421] 2015-08-18 02:37:17 -04:00
i386 Remove the unused IFUNC files 2015-08-20 12:47:20 -07:00
ia64 ia64: atomic.h: fix atomic_exchange_and_add 64bit handling 2015-07-28 02:30:15 -04:00
ieee754 Fix uninitialized variable use in ldbl-128ibm nearbyintl. 2015-08-20 17:28:09 +00:00
init_array NPTL: Initializer for .init_array-only configurations. 2015-02-13 13:19:11 -08:00
m68k Fix BZ #18084 -- backtrace (..., 0) dumps core on x86. 2015-08-15 11:42:43 -07:00
mach PLT avoidance for _exit in rtld. 2015-07-09 15:25:47 -07:00
microblaze Fix BZ #18084 -- backtrace (..., 0) dumps core on x86. 2015-08-15 11:42:43 -07:00
mips Fix MIPS -Wundef warnings for __mips_isa_rev. 2015-08-18 21:52:22 +00:00
nacl NaCl: Call __nacl_main in preference to main. 2015-08-25 13:37:07 -07:00
nios2 Fixes extern protected data handling testcases elf/tst-protected1a 2015-07-26 05:27:18 -07:00
nptl Add and use new glibc-internal futex API. 2015-07-10 13:47:09 +02:00
posix Fix BZ #18086 -- nice resets errno to 0. 2015-08-11 23:40:00 -07:00
powerpc powerpc: Fix tabort usage in syscalls 2015-08-25 13:45:56 -03:00
pthread Use unsigned types for counters in AIO code. 2015-06-24 17:43:32 -07:00
s390 S390: Fix handling of DXC-byte in FPC-register. 2015-08-26 10:26:18 +02:00
sh Replace ELF_RTYPE_CLASS_NOCOPY with ELF_RTYPE_CLASS_COPY 2015-03-05 08:40:41 -08:00
sparc Fix BZ #18084 -- backtrace (..., 0) dumps core on x86. 2015-08-15 11:42:43 -07:00
tile tilepro: fix warnings in sysdeps/tile/tilepro/bits/atomic.h 2015-08-04 12:07:53 -04:00
unix Don't run tst-getpid2 with LD_BIND_NOW=1 2015-08-25 11:37:44 -07:00
wordsize-32 Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
wordsize-64 Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
x86 Move x86_64 init-arch.h to sysdeps/x86/init-arch.h 2015-08-20 04:29:23 -07:00
x86_64 Use SSE2 optimized strcmp in x86-64 ld.so 2015-08-25 12:38:11 -07:00