Commit Graph

7018 Commits

Author SHA1 Message Date
David S. Miller
eae47a3618 Add framework for using sparc VIS3 instructions, use it for copysign/signbit.
* sysdeps/sparc/configure.in: New file.
	* sysdeps/sparc/configure: Generate.
	* configure.in (libc_cv_sparc_as_vis3): Substitute.
	* configure: Regenerate.
	* config.h.in (HAVE_AS_VIS3_SUPPORT): New.
	* config.make.in (have-as-vis3): New.
	* sysdeps/sparc/sparc32/sparcv9/Makefile (ASFLAGS-*): If VIS3 is
	available use -Av9d instead of -Av9a.
	* sysdeps/sparc/sparc64/Makefile: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbit-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.S: New file.
2012-03-14 16:43:09 -07:00
David S. Miller
7bd951ff59 Small optimization to sparc 64-bit copysign.
* sysdeps/sparc/sparc64/fpu/s_copysign.S (__copysign): Use fzeros/fnegs
	to load 0x80000000 into a float register instead of using the stack.
	* sysdeps/sparc/sparc64/fpu/s_copysignf.S (__copysignf): Likewise.
2012-03-14 16:21:40 -07:00
Joseph Myers
bd951ccbe8 Install bits/syscall.h through install-headers. 2012-03-14 20:09:44 +00:00
Joseph Myers
e456826d7a Fix csqrt overflow/underflow (bug 13841). 2012-03-14 11:53:32 +00:00
David S. Miller
7c10fd3515 Fix hypotf overflow/underflow by using double precision instead of scaling.
[BZ #13840]
	* sysdeps/ieee754/flt-32/e_hypotf.c (__ieee754_hypotf): Rewrite to use
	double-precision for the calculation instead of scaling.
2012-03-13 18:08:58 -07:00
Joseph Myers
f453b98b6b Clean up dbl-64 rint, nearbyint. 2012-03-13 14:12:44 +00:00
David S. Miller
8e59da90ce Remove no longer needed assembler offset generation on sparc.
* sysdeps/sparc/Makefile: Remove rtld-global-offsets.sym handling.
	* sysdeps/sparc/elf/rtld-global-offsets.sym: Delete.
	* sysdeps/sparc/sparc64/multiarch/memcpy.S: Don't include
	rtld-global-offsets.h
	* sysdeps/sparc/sparc64/multiarch/memset.S: Likewise.
2012-03-13 03:14:23 -07:00
David S. Miller
2a8ab7f265 Fix generic ldbl-128 expm1l just like x86-64 and i386 variants were.
* sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use expl for
	large parameters.
2012-03-13 01:18:55 -07:00
David S. Miller
10f62770e1 Use correct implementation for dl-fxstatat64 on sparc64.
* sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c: New file.
2012-03-13 00:45:34 -07:00
David S. Miller
5f0bdb1894 Fix warning in Linux openat implementation when __ASSUME_ATFCTS is set.
* sysdeps/unix/sysv/linux/openat.c (OPENAT_NOT_CANCEL): Declare syscall
	'err' in the ifdef scope in which it is actually used.
2012-03-13 00:43:20 -07:00
David S. Miller
98bb2f1cd2 Fix another instance of the _dl_random masking bug, plus coding style.
* sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix
	masking out of the most significant byte of random value used.
	* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard):
	Fix coding style in previous change.
2012-03-12 15:57:17 -07:00
David S. Miller
b4b2eb5eae Add some missing sparc kernel-feature.h entries.
* sysdeps/unix/sysv/linux/kernel-features.h
	(__ASSUME_CLONE_THREAD_FLAGS): Set on sparc when 2.5.64 and later.
	(__ASSUME_TGKILL): Set on sparc when 2.6.1 and later, simplify
	expression.
	(__ASSUME_FADVISE64_64_SYSCALL): Set on sparc when 2.6.1 and
	later.
2012-03-12 15:51:15 -07:00
David S. Miller
a1bcbd4035 Fix some 64-bit sparc build warnings.
* sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c
	(__makecontext): Fix signedness of pointer casts setting up 'sp'.
	* sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL) Use 'long'
	for 'resultvar' otherwise things get truncated on 64-bit.
2012-03-11 20:13:55 -07:00
David S. Miller
cb9d617437 Fix typing of the bit twiddling done in _dl_setup_stack_chk_guard.
* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard):
	Fix masking out of the most significant byte of random value used.
2012-03-11 19:41:43 -07:00
David S. Miller
6e226b094f Update sparc ULPs for recently added tests.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-03-11 18:46:30 -07:00
Andreas Schwab
058c132dd1 Update powerpc libm ULPs 2012-03-10 19:18:42 +01:00
David S. Miller
2d2cd51564 Fix bugs in sparc PLT profiling register management, and add sparc sotruss support.
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Protect local
	variables with appropriate CPP guards.
	* sysdeps/sparc/sparc32/dl-trampoline.S: Propagate the stack_ptr from the
	frame pointer, not the stack pointer.  Correct layout comments.  Fix test
	on resulting framesize and the management of the outregs buffer for pltexit.
	Preserve floating point return values across _dl_call_pltexit call.
	* sysdeps/sparc/sparc64/dl-trampoline.S: Fix test on resulting
	framesize and the management of the outregs buffer for pltexit.
	Preserve floating point return values across _dl_call_pltexit
	call.
	* elf/sotruss-lib.c (la_sparc32_gnu_pltenter, la_sparc64_gnu_pltenter,
	la_sparc32_gnu_pltexit, la_sparc64_gnu_pltexit): New functions.
	(print_exit): Fix format string for return register value.
2012-03-09 20:48:06 -08:00
Paul Eggert
c524201ab0 Replace FSF snail mail address with URL in miscellaneous files. 2012-03-10 00:45:35 +00:00
Richard Henderson
5f0a5daeee Move math/math_private.h to sysdeps/generic/math_private.h.
This reverts commit 60d6f5a6f5.
2012-03-09 16:12:17 -08:00
Richard Henderson
b8c036204f Use include_next to chain math_private.h headers. 2012-03-09 16:11:26 -08:00
Richard Henderson
1ed0291c31 Use <> for math.h and math_private.h everywhere.
Entire tree edited via find | grep | sed.
2012-03-09 16:09:10 -08:00
Joseph Myers
02a6f887cb Split enum __socket_type from bits/socket.h to bits/socket_type.h. 2012-03-09 22:36:06 +00:00
Richard Henderson
67bb6da679 powerpc: Convert __ieee754_sqrt{,f} from macros to inlines. 2012-03-09 11:16:18 -08:00
Richard Henderson
15194b4b3d x86_64: Convert __rint* and __floor* from macros to inlines. 2012-03-09 11:15:47 -08:00
Richard Henderson
64e21edef1 x86_64: Convert __ieee754_sqrt{,f,l} from macros to inlines. 2012-03-09 11:15:19 -08:00
Richard Henderson
38842f4553 Use target-specific math_private.h in math_ldbl_opt.h. 2012-03-09 08:08:11 -08:00
David S. Miller
c64bf5feb3 Update copyright year after my most recent changes.
nptl/

	* sysdeps/unix/sysv/linux/sparc/sem_post.c: Update copyright year.

/

	* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c: Update
	copyright year.
	* sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
2012-03-08 15:09:27 -08:00
Thomas Schwinge
82d86f2844 Fix struct timespec normalization (as used in many other places). 2012-03-08 11:49:43 +01:00
Joseph Myers
a7a93d5086 Clean up glibc manual references to "GNU system" (bug 6911). 2012-03-08 01:27:38 +00:00
Joseph Myers
af6a1e3755 Fix sysdeps/i386/configure.in cpuid.h test for bootstrapping. 2012-03-07 20:51:54 +00:00
Joseph Myers
d1d3431a3a Fix signs of zeros from casinh, cacosh etc. (bug 10716). 2012-03-07 15:15:19 +00:00
Marek Polacek
a53b7a4e4b Fix up long double fphex. 2012-03-06 22:08:16 +01:00
David S. Miller
e92584001a Fix several build warnings on sparc.
/

	* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c
	(set_obp_int): New function.
	(get_obp_int): New function.
	(__get_clockfreq_via_dev_openprom): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sysdep.h (INTERNAL_SYSCALL_ERROR_P): Avoid
	unused variable warnings on 'val' and use builtin_expect.
	(INLINE_SYSCALL): Don't wrap INTERNAL_SYSCALL_ERROR_P with builtin_expect.
	(INLINE_CLONE_SYSCALL): Likewise.

nptl/

	* sysdeps/unix/sysv/linux/sparc/sem_post.c (__new_sem_post): Use
	atomic_increment and remove unused local variable.
	(__old_sem_post): Likewise.
2012-03-06 11:15:26 -08:00
David S. Miller
3bd2c72316 Update sparc ULPs due to recently added tests.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-03-05 21:07:32 -08:00
Andreas Schwab
884c5db424 Update powerpc libm ULPs 2012-03-05 20:38:18 +01:00
Andreas Schwab
bbb78d030e Fix loss of precision in cosh and sinh for IBM long double 2012-03-05 20:38:17 +01:00
H.J. Lu
8542dee325 * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c (gettimeofday_ifunc):
Replace gettimeofday with __vdso_gettimeofday.

	* sysdeps/unix/sysv/linux/x86_64/init-first.c (_libc_vdso_platform_setup):
	Replace clock_gettime and getcpu with __vdso_clock_gettime and
	__vdso_getcpu.

	* sysdeps/unix/sysv/linux/x86_64/time.c (time_ifunc): Replace
	time with __vdso_time.
2012-03-05 19:45:53 +01:00
Andreas Jaeger
30ee4ced20 * sysdeps/i386/fpu/libm-test-ulps: Update. 2012-03-05 13:37:29 +01:00
Joseph Myers
b7cd39e8f8 Fix pow in non-default rounding modes (bug 3976). 2012-03-05 12:22:46 +00:00
Joseph Myers
ca811b2256 Test cosh, sinh in non-default rounding modes (bug 3976). 2012-03-05 12:20:24 +00:00
Tom de Vries
6c6a98c983 2012-03-05 Tom de Vries <tom@codesourcery.com>
* sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Ensure
	default stack guard is set in last bytes.
	* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): Same.
2012-03-05 11:05:42 +01:00
Andreas Schwab
c692293436 Update powerpc libm ULPs 2012-03-04 16:03:21 +01:00
Marek Polacek
bc957d531c Remove oldish __GNUC_PREREQ. 2012-03-03 22:57:00 +01:00
David S. Miller
6358490d55 Add sparc optimized {l,}rint{,f} for 32-bit v9 and 64-bit.
* sysdeps/sparc/sparc32/sparcv9/fpu/s_llrint.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_llrintf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_lrint.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_lrintf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_llrint.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_llrintf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_lrint.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_lrintf.S: New file.
2012-03-02 18:59:09 -08:00
David S. Miller
49efa33d3d Update sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update for recently added tests.
2012-03-02 14:17:33 -08:00
Joseph Myers
804360ed83 Fix sin, cos, tan in non-default rounding modes (bug 3976). 2012-03-02 20:51:39 +00:00
Joseph Myers
a6d06d7b86 Fix scalbn, scalbln integer overflow. 2012-03-02 15:32:56 +00:00
Joseph Myers
28afd92dbd Fix exp in non-default rounding modes (bug 3976). 2012-03-02 15:12:53 +00:00
Chris Demetriou
b1eeb65d49 2012-03-01 Chris Demetriou <cgd@google.com>
* sysdeps/gnu/errlist-compat.awk: Don't depend on AWK internals
	* to
	have predictable order.
2012-03-02 09:32:45 +01:00
David S. Miller
3c96908397 Kill sparc32 specific __getpagesize, unneeded.
* sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c: Delete.
2012-03-01 23:30:55 -08:00