Commit Graph

7277 Commits

Author SHA1 Message Date
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
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
Andreas Jaeger
b35fe25ed9 [BZ #13658]
* sysdeps/x86_64/fpu/s_sincos.S: Delete.

	* math/libm-test.inc (sincos_test): Add test for large input.
2012-03-07 14:51:39 +01:00
Andreas Jaeger
580716898d Merge branch 'master' into bug13658-branch 2012-03-07 08:55:31 +01: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
David S. Miller
759707dee3 Optimized 64-bit sparc assembler for finite{,f} and isinf{,f}.
* sysdeps/sparc/sparc64/fpu/s_finite.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_finitef.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_isinf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_isinff.S: New file.
2012-03-01 22:14:35 -08:00
David S. Miller
dfdb8ff299 Optimized sparc assembler for signbit{,f,l} and some variants of isnan.
* sysdeps/sparc/sparc32/fpu/s_signbit.S: New file.
	* sysdeps/sparc/sparc32/fpu/s_signbitf.S: New file.
	* sysdeps/sparc/sparc32/fpu/s_signbitl.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_isnan.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_isnan.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_isnanf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_signbit.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_signbitf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_signbitl.S: New file.
2012-03-01 20:43:38 -08:00
David S. Miller
ead89f9695 Update Sparc ulps for recently added tests.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-03-01 17:34:04 -08:00
David S. Miller
7f66bd07f0 Sparc doesn't need seperate 32-bit and 64-bit ulps files.
* sysdeps/sparc/sparc32/fpu/libm-test-ulps: Move...
	* sysdeps/sparc/fpu/libm-test-ulps: to here.
	* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Delete.
2012-03-01 17:32:58 -08:00
David S. Miller
53362a4b0f Remove sparc binutils GOTDATA checks in lieu of new minimum version requirement.
* sysdeps/sparc/crti.S: Remove HAVE_BINUTILS_GOTDATA checks.
	* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc32/elf/start.S: Likewise.
	* sysdeps/sparc/sparc32/fpu/w_sqrt.S: Likewise.
	* sysdeps/sparc/sparc32/fpu/w_sqrtf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/w_sqrt.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/w_sqrtf.S: Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc64/elf/start.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/w_sqrt.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/w_sqrtf.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/____longjmp_chk.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/____longjmp_chk.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/brk.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
	* config.h.in (HAVE_BINUTILS_GOTDATA): Delete.
	* sysdeps/sparc/elf/configure.in: Remove binutils GOTDATA checks.
	* sysdeps/sparc/elf/configure: Regenerated.
2012-03-01 15:04:16 -08:00
Joseph Myers
7b1902cb3e Improve erfc accuracy. 2012-03-01 21:15:38 +00:00
Joseph Myers
0bab47b6b2 Fix x86 strcasecmp_l (bug 13786). 2012-02-29 22:37:38 +00:00
Joseph Myers
0fcad3e243 Add test for bug 5794 (incorrect expm1 overflow). 2012-02-29 20:49:20 +00:00
Joseph Myers
5b8a4d4a09 Reduce large expected errors from libm tests on x86 and x86_64. 2012-02-29 20:40:50 +00:00
David S. Miller
8847f03770 Add sparc optimized sqrt{,f}.
* sysdeps/sparc/sparc32/fpu/w_sqrt.S: New file.
	* sysdeps/sparc/sparc32/fpu/w_sqrtf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/w_sqrt.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/w_sqrtf.S: New file.
	* sysdeps/sparc/sparc64/fpu/w_sqrt.S: New file.
	* sysdeps/sparc/sparc64/fpu/w_sqrtf.S: New file.
2012-02-28 22:37:58 -08:00
Ulrich Drepper
39adf059fc Optimized expf for x86-64 2012-02-28 20:06:39 -05:00
Joseph Myers
d40c5d54cb Regenerate sysdeps/gnu/errlist.c for errno.texi changes. 2012-02-28 16:37:58 +00:00
Andreas Jaeger
94c3cff583 Rename dirfd to __dirfd, add weak_alias. 2012-02-28 13:16:05 +01:00
Andreas Jaeger
fabe2a9514 Avoid local PLT for dirfd 2012-02-28 13:15:34 +01:00
David S. Miller
741a235bf6 Add optimized copysign for sparc.
* sysdeps/sparc/sparc32/fpu/s_copysign.S: New file.
	* sysdeps/sparc/sparc32/fpu/s_copysignf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_copysign.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_copysignf.S: New file.
2012-02-28 00:33:00 -08:00
David S. Miller
1aff59a3f7 Optimized sparc floor{,f} routines.
* sysdeps/sparc/sparc32/sparcv9/fpu/s_floor.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_floorf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_floor.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_floorf.S: New file.
2012-02-27 20:36:30 -08:00
David S. Miller
d6b5aa5879 Fix %fp/%sp typo in new sparc ceil{,f} assembler.
* sysdeps/sparc/sparc32/sparcv9/fpu/s_ceil.S: Fix accidental use of
	frame pointer instead of stack pointer relative arg slot.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_ceilf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/s_ceil.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/s_ceilf.S: Likewise.
2012-02-27 20:33:25 -08:00
David S. Miller
d674b76d0e Fix comment formatting in new optimized sparc math files. 2012-02-27 15:26:06 -08:00
David S. Miller
428d5830a2 Optimized sparc ceil{,f} and rint{,f} routines.
* sysdeps/sparc/sparc32/sparcv9/fpu/s_ceil.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_ceilf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_rint.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_rintf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_ceil.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_ceilf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_rint.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_rintf.S: New file.
2012-02-27 14:55:58 -08:00
David S. Miller
a78bc6549c Fix ldbl-128 rintl/nearbyintl just like flt-32 variants.
* sysdeps/ieee754/ldbl-128/s_nearbyintl.c (__nearbyintl): Do not
	manipulate bits before adding and subtracting TWO112[sx].
	* sysdeps/ieee754/ldbl-128/s_rintl.c (__rintl): Likewise.
2012-02-27 14:51:45 -08:00
Joseph Myers
abd923dbf2 Require Linux kernel headers from "make headers_install", >= 2.6.19.1. 2012-02-27 20:52:30 +00:00
Andreas Schwab
12e5c3b9e5 Add missing headers 2012-02-27 20:27:41 +01:00
Ulrich Drepper
8da0464f6f Fix name mangling of pthread_attr_t after change 2012-02-26 21:42:53 -05:00
Ulrich Drepper
d94a467080 Add first fixes for conformtest for POSIX2008 2012-02-26 21:32:56 -05:00
Ulrich Drepper
4a3dded527 Work around problem of pthread_attr_t definition with old compilers 2012-02-26 17:41:17 -05:00
Ulrich Drepper
4efeffc1d5 Fix up POSIX testing in conformtest 2012-02-26 13:17:27 -05:00
Andreas Schwab
c20105c398 Replace sysdeps/ieee754/dbl-64/k_tan.c with empty file 2012-02-26 16:10:46 +01:00
Joseph Myers
6cbeae4719 Fix nearbyintf rounding. 2012-02-22 13:03:40 +00:00
Joseph Myers
fe45ce09f3 Fix rintf rounding. 2012-02-22 13:01:20 +00:00
David S. Miller
586394099c Update long-double sparc math ULPs missed by previous changes.
* sysdeps/sparc/sparc32/fpu/libm-test-ulps: More jn test ULP updates.
	* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Likewise.
2012-02-21 15:36:11 -08:00
David S. Miller
c0e70b2543 Tweak sparc32 longjmp to not store a dummy frame pointer onto the stack.
* sysdeps/sparc/sparc32/__longjmp.S: Unwind in the 'thread' path
	using a normal save/restore sequence, rather than allocating a
	dummy stack frame just to store a frame pointer and restore.
	* sysdeps/unix/sysv/linux/sparc/sparc32/____longjmp_chk.S: Likewise.
2012-02-20 20:50:14 -08:00
David S. Miller
d510c12326 Use PI_STATIC_AND_HIDDEN on sparc if we universally use GOTDATA relocs.
* sysdeps/sparc/elf/configure.in (PI_STATIC_AND_HIDDEN): Define if
	both binutils and gcc support GOTDATA.
2012-02-20 17:52:07 -08:00
David S. Miller
0722d7c2ac Explain why we don't make use of RDPC in the sparc PIC register setup.
* sysdeps/unix/sparc/sysdep.h: Document why we don't use
	"rd %pc" in the PIC register setup sequences.
2012-02-20 17:52:01 -08:00
David S. Miller
3d2b3019e0 Use sparc GOTDATA relocations whenever possible.
* sysdeps/sparc/crti.S: Try to use GOTDATA relocs.
	* sysdeps/sparc/sparc32/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/sparc/sparc32/elf/start.S: Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/sparc/sparc64/elf/start.S: Likewise.
	* sysdeps/sparc/sparc64/multiarch/memcpy.S: Likewise.
	* sysdeps/sparc/sparc64/multiarch/memset.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/____longjmp_chk.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
	(SYSCALL_ERROR_HANDLER): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/____longjmp_chk.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/brk.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
	(SYSCALL_ERROR_HANDLER): Likewise.
2012-02-20 17:51:53 -08:00
David S. Miller
c80098a9a0 Add sparc configure checks for GOTDATA support.
* config.h.in (HAVE_BINUTILS_GOTDATA): New.
	(HAVE_GCC_GOTDATA): New.
	* sysdeps/sparc/elf/configure.in: Test for GOTDATA
	relocation support in both binutils and gcc.
	* sysdeps/sparc/elf/configure: Regenerate.
2012-02-20 17:51:48 -08:00
David S. Miller
3a2545a0f3 Consolidate Sparc ELF configure fragments to one spot.
* sysdeps/sparc/sparc32/elf/configure.in: Delete.
	* sysdeps/sparc/sparc32/elf/configure: Delete.
	* sysdeps/sparc/sparc64/elf/configure.in: Delete.
	* sysdeps/sparc/sparc64/elf/configure: Delete.
	* sysdeps/sparc/elf/configure.in: New file.
	* sysdeps/sparc/elf/configure: Generate.
2012-02-20 17:51:40 -08:00
David S. Miller
7a8b71c37c Remove sparc WDISP22 configure checks, no longer used.
* sysdeps/sparc/sparc32/elf/configure.in: Delete WDISP22 check.
	* sysdeps/sparc/sparc32/elf/configure: Regenerate.
	* sysdeps/sparc/sparc64/elf/configure.in: Likewise.
	* sysdeps/sparc/sparc64/elf/configure: Regenerate.
	* config.h.in (BROKEN_SPARC_WDISP22): Remove.
2012-02-20 17:51:21 -08:00
Joseph Myers
0e7dfaef51 Remove old initfini mechanism. 2012-02-21 00:46:01 +00:00
Joseph Myers
599af3ca61 Split architecture-specific parts of sys/epoll.h into bits/epoll.h. 2012-02-21 00:32:30 +00:00
Joseph Myers
0e4997508d Split architecture-specific parts of sys/timerfd.h into bits/timerfd.h. 2012-02-21 00:29:13 +00:00
Joseph Myers
5ad91f6e6f Resort ULPs files with gen-libm-test.pl -n in C locale. 2012-02-20 18:06:05 +00:00
Aurelien Jarno
06b99b0263 Adjust SPARC ULPs to take into account the new jn tests. 2012-02-20 07:37:30 +01:00
Andreas Schwab
7638c0fda5 Add support for Linux error EHWPOISON 2012-02-19 18:27:02 +01:00
Aurelien Jarno
92221550d7 Use non-signaling floating-point comparisons in math functions. 2012-02-19 11:20:18 +01:00
David S. Miller
dd54084dd9 Rework sparc PIC macros so crt{i,n}.S can use them too.
* sysdeps/unix/sparc/sysdep.h (SPARC_PIC_THUNK): New macro.
	(SETUP_PIC_REG): Use SPARC_PIC_THUNK and don't save and restore
	%o7 across the call.
	(SETUP_PIC_REG_LEAF): Do %o7 save/restore in this new macro
	instead.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Use
	SETUP_PIC_REG_LEAF.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
	* sysdeps/sparc/crti.S: Use SETUP_PIC_REG.
	* sysdeps/sparc/crtn.S: Likewise.
2012-02-18 22:31:42 -08:00
Aurelien Jarno
8dee4833c5 Include <time.h> in clock_settime.c. 2012-02-17 17:46:56 +01:00
Thomas Schwinge
9078ce930a Hurd: #define away madvise for malloc code, fix previous commit. 2012-02-17 08:46:28 +01:00
Richard Henderson
e3b69ca7d1 s390: Convert to crt[in].S. 2012-02-16 09:24:19 -08:00
David S. Miller
fb59b3a4f5 Add O_FSYNC define to sparc just like other platforms. 2012-02-16 14:56:54 -08:00
Kaz Kojima
af1dd5d680 Merge branch 'master' of git://sources.redhat.com/git/glibc 2012-02-16 07:21:37 +09:00
Kaz Kojima
df83af673b Add SH target specific crti.S and crtn.S and remove initfini files.
Add sysdeps/sh/crti.S, sysdeps/sh/crtn.S and remove sysdeps/sh/elf/initfini.c
and nptl/sysdeps/unix/sysv/linux/sh/pt-initfini.c.
2012-02-16 07:17:24 +09:00
David S. Miller
f63f338062 Move sparc away from the deprecated inifini.c scheme.
/

	* sysdeps/sparc/Makefile: Add -fPIC when building crt{i,n}.S
	* sysdeps/sparc/crti.S: New file.
	* sysdeps/sparc/crtn.S: New file.
	* sysdeps/sparc/sparc32/Makefile: Remove initfini handling.
	* sysdeps/sparc/sparc64/Makefile: Likewise.

nptl/

	* sysdeps/sparc/Makefile: Add -fPIC when building pt-crti.S and crtn.S
2012-02-16 12:54:05 -08:00
Roland McGrath
d2c736f809 Hurd: #define away madvise for malloc code. 2012-02-15 14:15:27 -08:00
Mike Frysinger
df6a4a4aec Include sys/param.h in getcwd.c. 2012-02-15 20:39:49 +00:00
Joseph Myers
8e475601f6 Split architecture-specific parts of sys/signalfd.h into bits/signalfd.h. 2012-02-15 20:11:20 +00:00
Marek Polacek
ed656b4065 Provide crt[in].S for x86-64. 2012-02-14 13:50:44 +01:00
Joseph Myers
2a979d3a14 Split architecture-specific parts of sys/inotify.h into bits/inotify.h. 2012-02-14 00:13:47 +00:00
Joseph Myers
2a418ac326 Split architecture-specific parts of sys/eventfd.h into bits/eventfd.h. 2012-02-13 20:27:59 +00:00
Thomas Schwinge
7c35ffedf1 Fix x86 PLT slot usage for feraiseexcept.
Then we're elf/check-localplt.out-clean again.
2012-02-10 21:05:54 +01:00
Paul Eggert
59ba27a63a Replace FSF snail mail address with URLs. 2012-02-09 23:18:22 +00:00
Richard Henderson
af850b1c97 Use <> for include of kernel-features.h. 2012-02-09 11:21:47 -08:00
Marek Polacek
6b73181ac5 Remove _G_HAVE_SYS_CDEFS. 2012-02-09 17:09:55 +01:00
Andreas Schwab
6c6dbc6300 Reduce ldouble ULPs for jn tests on x86 2012-02-08 22:25:15 +01:00
Andreas Schwab
ba988fc563 powerpc: add crt files
* sysdeps/powerpc/powerpc32/crti.S: New file.
	* sysdeps/powerpc/powerpc32/crtn.S: New file.
	* sysdeps/powerpc/powerpc64/crti.S: New file.
	* sysdeps/powerpc/powerpc64/crtn.S: New file.
2012-02-08 22:25:14 +01:00
Joseph Myers
3add8e1353 Support crti.S and crtn.S provided directly by architectures. 2012-02-08 01:45:26 +00:00
Marek Polacek
a22f12b477 Remove _G_ARGS macros. 2012-02-07 22:40:49 +01:00
Andreas Schwab
84ba42c4fb Adjust libm test ULPs for powerpc 2012-02-07 15:21:41 +01:00
Marek Polacek
622c86f480 Remove __ELF__ conditionals 2012-02-07 00:41:11 +01:00
Joseph Myers
d4a54ac649 Undefine and redefine __i686 for assembly code. 2012-02-06 23:01:25 +00:00
Joseph Myers
314054eaef Match x86 PIC thunk names to compiler version. 2012-02-06 18:05:54 +00:00
Joseph Myers
d8e0ca509a Use macro for PIC setup in inline asm. 2012-02-05 14:34:14 +00:00
Joseph Myers
b1da7dd99d Use macros for x86 PIC thunk names. 2012-02-03 23:24:19 +00:00
Joseph Myers
9a1d92541f Consistently use macros for x86 PIC thunks. 2012-02-03 23:22:53 +00:00
Joseph Myers
d55bf1777c Always define float_t as float for PowerPC, SH and SPARC. 2012-01-31 22:57:02 +00:00
Joseph Myers
c8a89e7dd5 Remove miscellaneous __STDC__ conditionals. 2012-01-30 21:20:32 +00:00
Joseph Myers
3b1004624e Fix makefile/configure problems with sse2avx changes. 2012-01-30 19:55:15 +00:00
Roland McGrath
ee3c3be688 Merge remote-tracking branch 'origin/cmetcalf/tile_epoll_pwait'
Conflicts:
	ChangeLog
2012-01-30 09:50:40 -08:00
Roland McGrath
de9298c991 Merge remote-tracking branch 'origin/cmetcalf/tile_not_cancel_h'
Conflicts:
	ChangeLog
2012-01-30 09:49:39 -08:00
Roland McGrath
6315810720 Merge remote-tracking branch 'origin/cmetcalf/tile_faccessat' 2012-01-30 09:47:47 -08:00
Ulrich Drepper
96bc5b45a6 Optimize x86-64 math inline header a bit 2012-01-28 21:20:06 -05:00
Ulrich Drepper
56f6f6a240 Use -msse2avx option for x86-64 libm functions 2012-01-28 14:48:46 -05:00
Chris Metcalf
3601428fb0 Call __fxstatat64 from faccessat() to avoid PLT in -Os builds. 2012-01-28 12:07:46 -05:00
Chris Metcalf
463de86252 Use include/sys/epoll.h to provide libc_hidden_proto for epoll_pwait(). 2012-01-28 12:00:12 -05:00
Chris Metcalf
540d7568ae Use <> brackets for not-cancel.h in sysdeps/unix/sysv/linux/grantpt.c. 2012-01-28 11:51:44 -05:00
Ulrich Drepper
73139a7628 Simplify use of AVX instructions in internal math macros 2012-01-28 11:19:06 -05:00
Adhemerval Zanella
d73f93a461 PowerPC - A2 memcpy cache line size initialization 2012-01-27 18:05:45 -05:00
Joseph Myers
8db2188281 Remove __STDC__ conditionals from libm. 2012-01-27 17:29:45 +00:00
Joseph Myers
965a54a4ee Remove __STDC__ conditionals from non-installed headers. 2012-01-26 23:31:37 +00:00
Joseph Myers
7071ad79db Remove __STDC__ conditionals from installed headers. 2012-01-26 20:49:22 +00:00
Ulrich Drepper
08cf777f9e Really fix AVX tests
There is no problem with strcmp, it doesn't use the YMM registers.
The math routines might since gcc perhaps generates such code.
Introduce bit_YMM_USBALE and use it in the math routines.
2012-01-26 09:45:54 -05:00
Ulrich Drepper
afc5ed09cb Reset bit_AVX in __cpu_features is OS support is missing 2012-01-26 07:45:14 -05:00
Samuel Thibault
0ea698ae78 Hurd: Try to respect mmap address hint for non-MAP_FIXED. 2012-01-23 14:00:47 -08:00
Pino Toscano
81c0c9648d Hurd: socket uses EAFNOSUPPORT rather than EPFNOSUPPORT. 2012-01-23 13:56:58 -08:00
Will Schmidt
929d11c7cf Powerpc: correct duplicate label issue with multiple passes through context code 2012-01-12 17:05:03 -05:00
Ulrich Drepper
0cc5ed3b01 Optimized acosh for 64-bit platforms 2012-01-11 22:01:09 -05:00
Ulrich Drepper
41d0e8696f Optimize scalbln 2012-01-11 12:49:16 -05:00
Ulrich Drepper
daa891c0e8 Optimize s_modf 2012-01-10 22:26:22 -05:00
Ulrich Drepper
a47a831ad8 Optimize ldexp and scalbn 2012-01-10 20:52:29 -05:00
Ulrich Drepper
d6e97a1da0 Some branch prediction for log1p 2012-01-09 18:59:04 -05:00
Will Schmidt
d1f741e912 Fix typo in Linux/PPC32 getcontext 2012-01-08 21:32:57 -05:00
Ulrich Drepper
ec09c1c410 Optimize xmalloc, xcalloc, xrealloc, and xstrdup
Add alloc_size attribute and apply consistently the malloc attribute
to xmalloc, xcalloc, xrealloc, and xstrdup.
2012-01-08 21:19:43 -05:00
Ulrich Drepper
d9a216c037 Add checking versions of poll and ppoll 2012-01-08 11:55:32 -05:00
Ulrich Drepper
2119dcfacc Static linking is always needed 2012-01-08 09:52:29 -05:00
Ulrich Drepper
a0da5fe1e4 More fallout from supporting only ELF 2012-01-08 00:45:01 -05:00
Ulrich Drepper
a784e50247 Remove pre-ISO C support
No more __const.
2012-01-07 23:57:22 -05:00
Ulrich Drepper
0269750ca6 Remove non-ELF support 2012-01-07 20:30:26 -05:00
Ulrich Drepper
00bbd29b35 Update ABI information 2012-01-07 19:23:45 -05:00
Ulrich Drepper
a2693a0e2e Remove m68k support from Linux configure 2012-01-07 13:06:38 -05:00
Ulrich Drepper
3f05895f12 Remove Alpha support from ldsodefs.h 2012-01-07 13:04:35 -05:00
Ulrich Drepper
664f8cb9d5 More IA-64 removal 2012-01-07 12:55:20 -05:00
Ulrich Drepper
7ae81d88f1 Linux configure cleanup 2012-01-07 12:44:28 -05:00
Ulrich Drepper
b13b98854e Remove IA-64 support from kernel-features.h 2012-01-07 12:23:45 -05:00
Ulrich Drepper
305502f69d Fix up a comment 2012-01-07 11:49:33 -05:00
Ulrich Drepper
e40bca1ef9 Yet more ia64 removal fallout 2012-01-07 11:44:02 -05:00
Ulrich Drepper
f03fe7f932 More ia64 removal changes 2012-01-07 11:39:33 -05:00
Ulrich Drepper
d75a0a62b1 Remove IA-64 support 2012-01-07 11:19:05 -05:00
Ulrich Drepper
74033a2507 Implement timespec_get 2012-01-01 07:17:21 -05:00
Marek Polacek
530a32499a Fix typos in comments 2011-12-23 13:59:40 -05:00
Ulrich Drepper
67371b5666 Prevent warnings due to long long constants 2011-12-23 13:52:59 -05:00
Liubov Dmitrieva
15db4de19d Fix overrun in destination buffer 2011-12-23 12:02:15 -05:00
Ulrich Drepper
70c6c246a2 Optimize x86-32 feraiseexcept also for !__SSE_MATH__ 2011-12-23 09:18:02 -05:00
Liubov Dmitrieva
c044cf14b0 Fix wrong copying processing for last bytes in x86-32 wcscpy
Wrong copy algorithm for last bytes, not thread safety.
In some particular cases it uses the destination
memory beyond the string end for
16-byte load, puts changes into that part that is relevant
to destination string and writes whole 16-byte chunk into memory.
I have a test case where the memory beyond the string end contains
malloc/free data, that appear corrupted in case free() updates
it in between the 16-byte read and 16-byte write.
2011-12-23 08:50:39 -05:00
Ulrich Drepper
aed9d17150 Add feraiseexcept optimization for x86-32 2011-12-22 17:52:30 -05:00
Ulrich Drepper
db910efdbd Also retrieve SSE exceptions in x86-32 fegetexceptflag 2011-12-22 16:28:08 -05:00
Ulrich Drepper
2797beae36 Merge branch 'master' of ssh://sourceware.org/git/glibc
Conflicts:
	ChangeLog
2011-12-22 14:23:28 -05:00
Liubov Dmitrieva
2bd779ae3f Fix overrun in strcpy destination buffer in x86-32/SSSE3 version 2011-12-22 14:22:00 -05:00
Joseph Myers
154bfc1622 Support building bits/syscall.h for any number of subarch variants. 2011-12-22 18:22:50 +00:00
Ulrich Drepper
21eaf3a5f9 Use __REDIRECT_NTH for __feraiseexcept_renamed 2011-12-22 08:05:21 -05:00
Ulrich Drepper
4920765eb4 Define EPOLLONESHOT and EPOLLET using unsigned values 2011-12-21 22:14:05 -05:00
Rafael Ávila de Espíndola
d2daaa1eb6 Define x86_64 feraiseexcept inline only under __USE_EXTERN_INLINES. 2011-12-21 13:27:09 -08:00
Adhemerval Zanella
f0b264f174 Optimized strcasecmp for Power7 2011-12-17 20:32:59 -05:00
Ulrich Drepper
b813d73fd7 Fix WP 2011-12-17 15:08:09 -05:00
Will Schmidt
91d2a8453f Simplify code for accessing powerpc GOT 2011-12-17 15:07:31 -05:00
Adhemerval Zanella
a1267ba1c6 Optimized nearbyint for PPC 2011-12-17 14:59:47 -05:00
Ulrich Drepper
370a7d88f7 WP fixes 2011-12-17 14:41:05 -05:00
Ulrich Drepper
1d3e4b618a Optimized wcschr and wcscpy for x86-64 and x86-32 2011-12-17 14:39:23 -05:00
Ulrich Drepper
f039c04307 Optimize generic ELF hash function a bit more 2011-12-10 11:53:44 -05:00
Andreas Schwab
850fb039ce Fix a wrong constant in powerpc hypot implementation 2011-12-06 11:12:01 +01:00
Ulrich Drepper
52ad36a219 Small optimization of generic ELF hash function 2011-12-04 17:44:33 -05:00
Ulrich Drepper
52ff5dd0e4 Fix attreibute for _dl_elf_hash 2011-12-04 16:12:20 -05:00
Ulrich Drepper
aff2453df7 Fix more warnings 2011-12-03 21:49:35 -05:00
Ulrich Drepper
f101631bfd SH atomic asms fix for gcc 4.7 2011-12-02 08:19:50 -05:00
Ulrich Drepper
a98275aa61 Implement SH backtrace using IA64 version 2011-12-02 07:35:33 -05:00
Andreas Schwab
6257af2d05 Truncate time values in Linux futimes when falling back to utime 2011-12-01 14:24:08 +01:00
Andreas Schwab
b5f44c1ad9 Adjust libm test ulps for s390 2011-11-30 14:14:42 +01:00
Andreas Schwab
5583a0862c Fix SSSE3/SSE4.2 strcasecmp[_l]/strncasecmp[_l] for non-PIC and -mno-tls-direct-seg-refs 2011-11-16 11:48:10 +01:00
Andreas Schwab
446514f97e Fix clock_gettime for assumed kernel >= 2.6.12 2011-11-15 15:17:15 +01:00
Ulrich Drepper
a501a01e06 Pretty printing 2011-11-15 07:18:15 -05:00
Andreas Schwab
09f93bd3d6 Fix reference counting in network interface information cache 2011-11-15 10:58:00 +01:00
Ulrich Drepper
312be3f9f5 Clean up internal fopen uses
No need to ever not use c and e.
2011-11-15 04:24:42 -05:00
Ulrich Drepper
6abf346582 Add SSE4.2 support for strcasecmp and strncasecmp on x86-32 2011-11-14 18:24:35 -05:00
Ulrich Drepper
76e3966e9e SSSE3 optimized strcasecmp and strncasecmp for x86-32 2011-11-13 09:50:13 -05:00
Ulrich Drepper
7edb22eff5 Fix wanings in clock_gettime 2011-11-12 02:54:34 -05:00
Ulrich Drepper
8ad89ef88d Avoid warnings about unused variable in 96-bit j0l and j1l 2011-11-12 02:20:29 -05:00
Ulrich Drepper
0c822ef988 Avoid warnings about unused variables in 96-bit hypotl 2011-11-12 02:15:07 -05:00
Ulrich Drepper
ca743930cd Prepare dwarf2.h for multiple inclusion 2011-11-12 02:11:48 -05:00
Ulrich Drepper
7da46b42d1 Fix incomplete edit in last patch 2011-11-12 02:10:45 -05:00
Ulrich Drepper
874e05643b Avoid redefinition of DWARF constants 2011-11-12 02:06:05 -05:00
Ulrich Drepper
294ce12680 Avoid warning from shifting 2011-11-12 01:31:29 -05:00
Ulrich Drepper
e7f4b08ee9 Fix warnings in fallback C code of x86-32 wide memory functions 2011-11-12 00:50:26 -05:00
Adhemerval Zanella
8a6d525522 PowerPC: Arithmetic function optimizations for POWER 2011-11-11 13:33:38 -05:00
Marek Polacek
aaddc98c25 Remove unused variables 2011-11-11 13:27:59 -05:00
Ulrich Drepper
fe72eebd67 Remove unnecessary code from x86-32 SSSE3 strncmp 2011-11-08 07:50:20 -05:00
Ulrich Drepper
34372fc6d3 Fix test of non-ASCII locales in x86-64 strcasecmp et.al. 2011-11-01 16:46:23 -04:00
Ulrich Drepper
e35f65ea8d unsigned long it better for the size arguments
The new syscalls should use unsigned long not size_t.  The parameters
are not a direct measure of memory size.
2011-11-01 10:38:00 -04:00
Ulrich Drepper
78239589cd New Linux syscalls process_vm_readv and process_vm_writev 2011-11-01 09:59:32 -04:00
Ulrich Drepper
3a2c02424d Cache network interface information
Whenever getaddrinfo needed network interface information it used the
netlink interface to read the information every single time.  The
problem is that this information can change at any time.

The patch implements monitoring of the network interfaces through
nscd.  If no change is detected the previously read information can
be reused (which is the norm).  This timestamp information is also
made available to other processes using the shared memory segment
between nscd and those processes.
2011-10-31 01:51:16 -04:00
Ulrich Drepper
636064eb4c Fix potential double close in __check_fd if OOM 2011-10-30 14:22:57 -04:00
Ulrich Drepper
cb95113e30 Fix accuracy problem in generic sin 2011-10-29 14:08:56 -04:00
Ulrich Drepper
52e4b9eb62 More cleanups of x86-64 strstr 2011-10-28 19:01:48 -04:00
Ulrich Drepper
fd52bc6dc4 Clean up x86-64 strcasestr
Actually describe in the C code what is going on.
2011-10-28 18:18:04 -04:00
Ulrich Drepper
a5b81e1fb7 Remove code without too much effects
Some of the AVX-specific code is not giving enough speed-up to
justify the extra code.
2011-10-28 16:55:01 -04:00
Andreas Schwab
0c92d8a87a Fix some warning nits 2011-10-28 12:02:08 +02:00
Andreas Schwab
b43433460b Move wide char related routines to wcsmbs subdir 2011-10-28 12:01:29 +02:00
Andreas Schwab
804791474d Fix uses of math_force_eval 2011-10-26 11:44:08 +02:00
Andreas Schwab
f6ce9294b0 Make math_force_eval accept non-addressable arguments 2011-10-26 11:44:08 +02:00
Ulrich Drepper
e0016b11d6 Add AVX optimized versions for some x86-64 math functions 2011-10-25 21:34:55 -04:00
Ulrich Drepper
618280a192 Optimize x86-64 SSE4.2+ strcmp a bit more 2011-10-25 14:50:31 -04:00
Ulrich Drepper
d7826aa149 Use math_force_eval in more places 2011-10-25 10:52:45 -04:00
Ulrich Drepper
31ea014d8b Use VEX encoding in inline math functions on x86-64 when possible 2011-10-25 08:17:57 -04:00
Ulrich Drepper
31d3cc00b0 Cleanup FMA4 patch
Move the FMA4 code into its own section.  Avoid some of the duplication
of data resulting from the double use of source files.
2011-10-25 00:56:33 -04:00
Ulrich Drepper
202c9deb15 Better DLA_FMS
It's better to use __builtin_fma if it works.  Use it for gcc 4.6 and
higher.  Move the x86-64 dla.h to the correct place.
2011-10-24 22:11:21 -04:00
Ulrich Drepper
a0cf1edd4c Use inline asm for DLA_FMS because of broken old compilers 2011-10-24 21:17:10 -04:00
Ulrich Drepper
af968f62f2 Optimize accurate 64-bit routines for FMA4 on x86-64 2011-10-24 20:19:17 -04:00
Ulrich Drepper
58985aa92f Finish renamed DLA_FMA -> DLA_FMS 2011-10-24 14:21:18 -04:00
Ulrich Drepper
bb3129bd25 Optimized remquo for 64-bit platforms 2011-10-23 21:31:21 -04:00
Ulrich Drepper
0275fff8a1 Optimize f_mod
Branch prediction for the 32-bit implementation and a new optimized
64-bit implementation.
2011-10-23 20:55:26 -04:00
Ulrich Drepper
2fa2ae85ca Fix strnlen change 2011-10-23 16:30:40 -04:00
Liubov Dmitrieva
fc2ee42abe Add optimized wcslen and strnlen for x86-32 2011-10-23 15:17:23 -04:00
Ulrich Drepper
09229f3e1b Fix WS 2011-10-23 14:57:28 -04:00
Liubov Dmitrieva
ce7dd29f28 Optimized strnlen and wcscmp for x86-64 2011-10-23 14:56:04 -04:00
Michael Zolotukhin
979c70a3b1 Improve x86-32 SSSE3 memcpy 2011-10-23 14:28:26 -04:00
Ulrich Drepper
f17424ed53 Fix WS 2011-10-23 13:35:24 -04:00
Liubov Dmitrieva
95584d3b33 Fix signedness in wcscmp comparison 2011-10-23 13:34:15 -04:00
Ulrich Drepper
774a2669af Clean up FMA use
The macro's name should reflect that subtraction is being done.  And
use __builtin_fma, it seems to work after all.
2011-10-23 13:31:01 -04:00
Ulrich Drepper
c8b3296bbe Clean up last dla.h change 2011-10-23 12:50:28 -04:00
Andreas Schwab
246ad57ad6 Add missing _finite aliases 2011-10-23 15:32:05 +02:00
Ulrich Drepper
fb24de5932 Fix typo in last change 2011-10-22 20:09:58 -04:00
Ulrich Drepper
0d355eb7c7 Update ULPs for x86-64 2011-10-22 20:06:23 -04:00
Ulrich Drepper
fa36182bda Improve DLA_FMA for FMA4 2011-10-22 19:53:33 -04:00
Ulrich Drepper
a1a8716924 Start using fma in the libm implementation 2011-10-22 19:02:20 -04:00
Andreas Schwab
ee2aafe08e Fix compilation due to __nan defines 2011-10-22 14:03:26 +02:00
Ulrich Drepper
bc62c2fb15 Optimization to some complex math functions
Also, change last reference to __sqrt into __sqrt to easily.
2011-10-22 00:32:39 -04:00
Ulrich Drepper
c196fed8f0 Fix compilation problems in x86-64 init-arch 2011-10-21 20:47:20 -04:00
Ulrich Drepper
8ec250a484 Add some __builtin_expect to generic __ieee754_log 2011-10-21 12:28:42 -04:00
Ulrich Drepper
1a97a8c78f Don't use NULL in last s_fma{,f} change 2011-10-21 07:39:28 -04:00
Ulrich Drepper
ed72b6545f Check for FMA4 support and generate appropriate fma functions 2011-10-20 22:43:15 -04:00
Ulrich Drepper
8d4f46c613 Move fma routines to right place 2011-10-20 21:55:41 -04:00
Ulrich Drepper
855d156018 Optimize x86-64 rawmemchr and add test 2011-10-19 22:22:29 -04:00
Ulrich Drepper
d9a4d2ab27 Add optimized str{,n}casecmp for AVX on x86-64 2011-10-19 12:42:38 -04:00
Andreas Schwab
8f3b1ffefa Fix PLT use for feraiseexcept on x86_64 2011-10-19 13:03:31 +02:00
Ulrich Drepper
d9a8d0abcc Use new internal libc_fe* interfaces in more functions 2011-10-18 15:11:31 -04:00
Ulrich Drepper
4855e3ddf5 Provide combined internal feholdexcept/fesetround interface 2011-10-18 09:59:04 -04:00
Ulrich Drepper
23ce562780 Pretty print last change to x86-64 mathinline.h 2011-10-18 09:38:47 -04:00
Ulrich Drepper
581d30e386 Add optimized nearbyint{,f} for x86-64 2011-10-18 09:13:23 -04:00
Ulrich Drepper
d38f1dba00 Start optimizing the use of the fenv interfaces in libm itself 2011-10-18 09:00:46 -04:00
Andreas Schwab
83c7615c2d Fix last change 2011-10-18 14:11:29 +02:00
Andreas Schwab
caa6c9d845 Fix linkage conflict with feraiseexcept 2011-10-18 11:46:51 +02:00
Ulrich Drepper
99ce7b04ed Small optimization of generic exp2 2011-10-17 23:16:34 -04:00
Ulrich Drepper
1004d1821e Add optimized 64-bit frexp 2011-10-17 22:30:44 -04:00
Ulrich Drepper
228a984d54 Relax asm requirements for recently added x86-64 math interfaces 2011-10-17 20:30:52 -04:00
Ulrich Drepper
c8553a6a6f Makr x86-64 math_private.h more robust 2011-10-17 16:00:39 -04:00
Ulrich Drepper
ed22dcf691 Provide internal optimizations on x86-64 with SSE4.1
Provide macros so that the internal users can, if possible, directly use
the new instructions.

Also fix up the mathinline.h header when compiling with SSE4.1 enabled.
2011-10-17 11:23:40 -04:00
Ulrich Drepper
b171c13768 Fix last x86-64 mathinline change
Use correct function names.
2011-10-17 10:37:00 -04:00
Ulrich Drepper
ad0f5cad15 Use rounds{s,d} for x86 rint, ceil, floor 2011-10-16 20:58:17 -04:00
Ulrich Drepper
79b195b55a No need for boundary case handling in x86-32 __ieee_log 2011-10-15 22:21:53 -04:00
Ulrich Drepper
d4a285692a Optimized floor for 64-bit architectures 2011-10-15 21:44:45 -04:00
Ulrich Drepper
b61099b50a Add cosh optimized for 64-bit architectures 2011-10-15 20:47:01 -04:00
Ulrich Drepper
bcf01e6d80 Optimize exp
Add __exp*_finite optimizations and rewrite some wrappers.
2011-10-15 20:22:59 -04:00
Ulrich Drepper
ba1a0d5938 No need for boundary case handling in x86-32 __ieee_logf 2011-10-15 18:09:12 -04:00
Ulrich Drepper
fd5bdc0924 Optimize access to isXYZ and toXYZ tables
The functions to get the pointers can now depend on the TLS variable
be initialized.
2011-10-15 16:27:08 -04:00
Ulrich Drepper
2d1f3a4db6 Fix WS 2011-10-15 11:11:12 -04:00
Liubov Dmitrieva
be13f7bff6 Optimized memcmp and wmemcmp for x86-64 and x86-32 2011-10-15 11:10:08 -04:00
Ulrich Drepper
38ad40ceca Optimize x86-32 log 2011-10-14 23:41:47 -04:00
Andreas Schwab
349290c00a Adjust s390 libm ULPs 2011-10-14 11:41:06 +02:00
Andreas Schwab
6b1f68c91f Fix lost feraiseexcept symbol 2011-10-14 11:21:23 +02:00
Andreas Schwab
714fad23c6 Fix PLT use in feupdateenv on x86_64 2011-10-13 15:26:45 +02:00
Andreas Schwab
81dcc7fb74 Check for zero size in memrchr for x86_64 2011-10-13 13:34:41 +02:00
Ulrich Drepper
f9e123204e Fix whitespaces 2011-10-12 11:42:57 -04:00
Liubov Dmitrieva
951fbcec70 Optimized memchr, memrchr, rawmemchr for x86-32 2011-10-12 11:42:04 -04:00
Ulrich Drepper
0ac5ae2335 Optimize libm
libm is now somewhat integrated with gcc's -ffinite-math-only option
and lots of the wrapper functions have been optimized.
2011-10-12 11:27:51 -04:00
Andreas Schwab
12cc2fcdb4 Implement __isinf_nsl for IBM long double 2011-10-10 21:39:59 +02:00
Roland McGrath
5060422095 Conditionalize unnecessary #include. 2011-10-08 15:28:21 -07:00