Commit Graph

7143 Commits

Author SHA1 Message Date
Andreas Schwab
7998fa7899 Disable use of FMA instructions in branred 2012-03-21 23:58:50 +01:00
H.J. Lu
8e95c99a7a Add _ITOA_NEEDED and _ITOA_WORD_TYPE
Add _ITOA_NEEDED and _ITOA_WORD_TYPE to override _itoa and _itowa.
2012-03-21 14:38:47 -07:00
David S. Miller
6f4db457f8 Update sparc ULPs for recently added tests.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-03-21 14:20:46 -07:00
H.J. Lu
7785fe5a0b Check x86_64* instead of x86_64 2012-03-21 12:37:38 -07:00
Joseph Myers
40b601fbb7 Use autoconf macro for testing compiler options with empty input. 2012-03-21 16:33:57 +00:00
Joseph Myers
1a4ac776eb Remove inaccurate x86 cexp implementations (bug 13883). 2012-03-21 15:28:05 +00:00
Joseph Myers
2460d3aa21 Fix pow of zero and infinity to large powers. 2012-03-21 12:16:00 +00:00
H.J. Lu
eb96ffb07d Move stdio-common/_itoa.h to sysdeps/generic 2012-03-20 16:00:23 -07:00
Andreas Jaeger
d6373f9ce3 Merge branch 'master' into elf-move 2012-03-20 20:40:16 +01:00
H.J. Lu
d1af992d0d Check __x86_64__ instead of __WORDSIZE in mathinline.h 2012-03-20 08:54:58 -07:00
H.J. Lu
114883e00a Support x86-64 __jmp_buf with __WORDSIZE != 64 2012-03-20 08:53:42 -07:00
Andreas Jaeger
1d6c3d237d Remove old debug/backtracesyms files, replace with elf versions. 2012-03-20 09:32:41 +01:00
Andreas Jaeger
ff962fb6a1 Remove unused start.c files. 2012-03-20 09:14:04 +01:00
H.J. Lu
95443d88af Use atomic64_t with 64bit atomic macros 2012-03-19 17:29:26 -07:00
H.J. Lu
490df6c441 Check __x86_64__ instead of __WORDSIZE for fenv_t 2012-03-19 16:10:51 -07:00
H.J. Lu
5e52b189f0 Check __x86_64__ instead of __WORDSIZE in mathdef.h 2012-03-19 16:00:52 -07:00
David S. Miller
e1497744f0 Update sparc ULPs for newly added tests.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-03-19 15:46:15 -07:00
H.J. Lu
a9879d4cde Add x32 support to ldd-rewrite.sed 2012-03-19 15:18:44 -07:00
H.J. Lu
b4c35121c4 Use int64_t in x86_64/fpu/math_private.h 2012-03-19 15:17:48 -07:00
David S. Miller
5df98260fe Fix sparc build after math_private.h cleanups.
* sysdeps/sparc/fpu/fenv_private.h: New file.
	* sysdeps/sparc/fpu/math_private.h: Use it.
	(libc_feholdexcept, libc_feholdexceptf, libc_feholdexceptl):
	Remove.
	(libc_feholdexcept_setround, libc_feholdexcept_setroundf,
	(libc_feholdexcept_setroundl): Remove.
	(libc_fetestexcept, libc_fetestexceptf, libc_fetestexceptl):
	Remove.
	(libc_fesetenv, libc_fesetenvf, libc_fesetenvl): Remove.
	(libc_feupdateenv, libc_feupdateenvf, libc_feupdateenvf): Remove.
2012-03-19 15:12:50 -07:00
H.J. Lu
56965fd71c Cast _Unwind_GetCFA return to _Unwind_Ptr first 2012-03-19 13:33:20 -07:00
Joseph Myers
1897ad4432 Fix clog overflow/underflow (bug 13629). 2012-03-19 20:14:26 +00:00
Joseph Myers
7726d6a95d Fix atan2 spurious exceptions (bug 11451). 2012-03-19 20:11:09 +00:00
Andreas Jaeger
6870c2ed1f Fix last line in configure.in. 2012-03-19 21:09:50 +01:00
Andreas Jaeger
8f599ddb67 Fix last line. 2012-03-19 21:06:14 +01:00
Andreas Jaeger
c93ba10617 Move sysdeps/generic/elf/* to sysdeps/generic 2012-03-19 21:04:21 +01:00
Andreas Jaeger
735095ae95 Merge sysdeps/i386/elf/Versions into sysdeps/i386/Versions.
Move sysdeps/i386/elf/start.S to sysdeps/i386/
Merge sysdeps/i386/elf/configure.in into sysdeps/i386/configure.in
Delete merged files sysdeps/i386/elf/configure.in, sysdeps/i386/elf/Versions
and sysdeps/i386/elf/configure.
2012-03-19 21:02:40 +01:00
Andreas Jaeger
1221efbda9 Remove now obsolete elf/configure file. 2012-03-19 20:58:43 +01:00
Andreas Jaeger
0894643164 Merge contents from sysdeps/i386/configure.in (without i686 check) 2012-03-19 20:58:05 +01:00
Andreas Jaeger
9d639b9918 Move x86_64/elf files to x86_64 2012-03-19 20:55:26 +01:00
Joseph Myers
83d1aec8fc Remove common-objdir-compile and related sysdeps/unix/Makefile code. 2012-03-19 16:23:26 +00:00
Richard Henderson
bd37f2ee31 Optimize private 387 fenv access; share code between i386 and x86_64. 2012-03-19 06:51:39 -07:00
Richard Henderson
d0adc92230 i386/x86_64: Optimize feholdexcept. 2012-03-19 06:51:06 -07:00
Richard Henderson
0fe0f1f86f Create and use libc_feupdateenv_test.
We can reduce the number of STMXCSR, and often we can avoid the
call to __feraiseexcept.
2012-03-19 06:50:41 -07:00
Richard Henderson
eb92c487b3 Create and use SET_RESTORE_ROUND{,_NOEX,_53BIT}{,F,L}. 2012-03-19 06:49:44 -07:00
Richard Henderson
7d2e8012cf i386: Convert libc_{feholdexcept_setround,updateenv}_53bit to functions.
Also fix a bug in libc_feupdateenv_53bit: don't force the rounding
precision back to _FPU_EXTENDED, instead restore the precision that
the user had in effect beforehand.
2012-03-19 06:49:04 -07:00
Richard Henderson
b4dabbb47a Convert libc_feholdexcept et al from macros to inline functions. 2012-03-19 06:48:27 -07:00
Richard Henderson
4851a949b4 Make inline __isnan, __isinf_ns, __finite generic.
For code generation to stay identical on x86_64, this requires that
we define the fp word manipulation macros before including the
generic header.
2012-03-19 06:47:43 -07:00
Andreas Schwab
e79d442ee6 Update powerpc libm test ULPs 2012-03-18 15:20:42 +01:00
David S. Miller
90b80344c6 Add missing Versions entry for sparc's __getshmlba.
[BZ #6471]
	* sysdeps/unix/sysv/linux/sparc/Versions: Add __getshmlba entry
	for 2.16.
2012-03-17 15:55:27 -07:00
David S. Miller
77e927affd Fix warnings when uintptr_t is larger than int.
* sysdeps/unix/sysv/linux/shmat.c (shmat): Use -1l to avoid
	warnings.
2012-03-16 21:02:54 -07:00
David S. Miller
374976dd13 Fix SHMLBA on sparc.
[BZ #6471]
	* sysdeps/unix/sysv/linux/shmat.c (shmat): Test for syscall errors
	properly.
	* sysdeps/unix/sysv/linux/sparc/getshmlba.c: New file.
	* sysdeps/unix/sysv/linux/sparc/Makefile: Add getshmlba to
	sysdep_routines when subdir is sysvipc.
	* sysdeps/unix/sysv/linux/sparc/bits/shm.h (SHMLBA): Use new
	__getshmlba helper.
2012-03-16 19:28:51 -07:00
David S. Miller
edc218041e Update sparc ULPs.
* sysdeps/sparc/fpu/libm-test/ulps: Update.
2012-03-16 16:01:28 -07:00
H.J. Lu
473c3ef325 Define x86-64 ffsl alias only if __LP64__ is defined 2012-03-16 15:20:45 -07:00
H.J. Lu
eb0f39b6b7 Make lround the alias of llround for wordsize-64 2012-03-16 15:20:45 -07:00
H.J. Lu
6b6cd74bab Use greg_t and uintptr_t in x86-64 __makecontext 2012-03-16 15:20:45 -07:00
H.J. Lu
f1a77b01f4 Add x32 support to ldconfig 2012-03-16 15:20:45 -07:00
Joseph Myers
c36e1d2369 Disable Bessel function TLOSS errors in POSIX mode. 2012-03-16 20:08:02 +00:00
Joseph Myers
11b90b9f50 Fix tan, tanl for large inputs. 2012-03-16 20:05:37 +00:00
Jan Kratochvil
6a1bd2a100 * sysdeps/x86_64/elf/start.S: Include <sysdep.h>.
(_start): Add cfi_startproc, cfi_undefined for rip and cfi_endproc.
2012-03-16 20:49:23 +01:00
Joseph Myers
96cbe7f482 Include program generating __sincosl_table in comment. 2012-03-16 15:18:19 +00:00
Joseph Myers
8848d99dce Implement ldbl-96 sinl / cosl / sincosl (bug 13851). 2012-03-16 12:30:05 +00:00
David S. Miller
dd7f470327 Implement optimized libc_fe*() math routines on sparc.
* sysdeps/sparc/fpu/math_private.h: New file.
2012-03-16 03:05:49 -07:00
David S. Miller
e6a62e18fd Add sparc vis3 optimized fma/fmaf.
* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fma-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fma.c: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaf.c: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fma-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fma.c: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Add fma/fmaf
	sysdep routines.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Likewise.
2012-03-15 23:09:16 -07:00
David S. Miller
88cb87d908 Sparc long double is emulated in software, therefore use dbl-64's s_fma.c
* sysdeps/sparc/sparc32/fpu/s_fma.c: New file.
	* sysdeps/sparc/sparc64/fpu/s_fma.c: New file.
2012-03-15 20:55:42 -07:00
David S. Miller
006f1daa5a Create a header for sparc ifunc expansion and use it for VIS3 ifuncs.
* sysdeps/sparc/sparc-ifunc.h: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S: Use sparc-ifunc.h
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaxf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fminf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrt.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrtf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_finite.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_finitef.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmax.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmaxf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmin.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fminf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinff.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnan.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_rint.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.S: Likewise.
2012-03-15 20:29:44 -07:00
Andreas Schwab
11e0098ef0 Use double precision instead of scaling for powerpc __ieee754_hypotf 2012-03-15 18:13:52 +01:00
Andreas Jaeger
d5ce0ef38d Update 2012-03-15 18:03:38 +01:00
Andreas Jaeger
ee010c9e95 * sysdeps/i386/fpu/s_tanf.S: Delete so that i386 uses the
ieee754/flt-32 implementation for tan.
* math/libm-test.inc (tan_test): Add tests for large input.
* sysdeps/i386/fpu/libm-test-ulps: Update.
2012-03-15 17:34:24 +01:00
Andreas Jaeger
8c0247db32 [BZ #13852]
* sysdeps/i386/fpu/e_rem_pio2f.c: Delete so that i386 uses the
	ieee754/flt-32 implementation.
	* sysdeps/i386/fpu/k_rem_pio2f.c: Likewise.
	* sysdeps/i386/fpu/s_cosf.S: Likewise.
	* sysdeps/i386/fpu/s_sincosf.S: Likewise.
	* sysdeps/i386/fpu/s_sinf.S: Likewise.

	* math/libm-test.inc (cos_test): Enable some large input tests for
	float as well
	(sin_test): Likewise.
	(sincos_test): Likewise.
	* sysdeps/i386/fpu/libm-test-ulps: Update.
2012-03-15 17:23:43 +01:00
Andreas Jaeger
25fb532ca5 Merge branch 'bug13658-branch' 2012-03-15 14:21:59 +01:00
Andreas Jaeger
ad6e0564b8 Cleanup formatting. 2012-03-15 14:14:39 +01:00
Andreas Schwab
9cad04eaf7 Update powerpc libm ULPs 2012-03-15 13:55:46 +01:00
David S. Miller
f7062b9a6f Sparc optimized fmin{,f} and fmax{,f}.
* sysdeps/sparc/sparc64/fpu/s_fmax.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_fmaxf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_fmin.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_fminf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fmaxf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fminf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmax.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmaxf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmaxf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmin-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmin.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fminf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_fminf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaxf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaxf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fminf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fminf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Add new vis3
	fmin/fmax sysdep routines.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Likewise.
2012-03-15 02:13:54 -07:00
Andreas Jaeger
556b0b6130 Merge branch 'master' into bug13658-branch 2012-03-15 09:55:49 +01:00
David S. Miller
559398ab74 Add more sparc VIS3 optimized math routines.
* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_finite-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_finite.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_finitef-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_finitef.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinff-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinff.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnan-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnan.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrint-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_rint-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_rint.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_rintf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Add new VIS3 routines.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrt-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrt.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrtf-vis3.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrtf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Add new VIS3 routines.

	* sysdeps/sparc/sparc32/sparcv9/fpu/unix/sysv/linux/multiarch/Implies:
	New file.
2012-03-15 00:14:55 -07:00
David S. Miller
5a1c1e3243 Update sparc ULPs for newly added csqrt tests.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-03-14 17:25:35 -07:00
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
Andreas Jaeger
22417c803d Update ULPs. 2012-03-14 17:23:31 +01:00
Andreas Jaeger
c4814b6b3a Implement and use libc_feholdexcept_setround_53bit and libc_feupdateenv_53bit
so that double arithmetic in s_sin is done in 53 bit (without extend i386 double precision)
2012-03-14 17:20:10 +01:00
Andreas Jaeger
1e2405c8fa Remove files so that i386 uses the iee754/dbl-64 sin and cos implementation. 2012-03-14 17:09:07 +01:00
Andreas Jaeger
356a10ee3e Merge branch 'master' into bug13658-branch 2012-03-14 16:36:17 +01: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