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
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
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
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
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
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
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
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
Paul Eggert
59ba27a63a
Replace FSF snail mail address with URLs.
2012-02-09 23:18:22 +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
7071ad79db
Remove __STDC__ conditionals from installed headers.
2012-01-26 20:49:22 +00: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
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
3a62d00d40
Don't call ifunc functions in trace mode
2011-10-05 14:35:40 +02:00
Ulrich Drepper
83cd142045
Remove --wth-tls option, TLS support is required
2011-09-11 15:02:01 -04:00
Ulrich Drepper
d063d16433
Remove support for !USE___THREAD
2011-09-10 16:50:28 -04:00
Ulrich Drepper
92963737c4
Remove support for automatic cvs check-ins
...
CVS use for glibc is long gone.
2011-09-08 23:19:04 -04:00
David S. Miller
15c95c5d1a
Fixes and optimizations for 32-bit sparc fabs*().
2011-09-05 10:06:15 -07:00
David S. Miller
5f4318d102
Sanitize HWCAP_SPARC_* defines/usage, and add new entries.
2011-09-01 13:43:06 -07:00
David S. Miller
ad69cc2652
Rewritten v9/64-bit sparc strcmp.
2011-08-24 01:32:24 -07:00
David S. Miller
2c0b250ae4
Fix jmpbuf unwind checks on sparc64.
2011-08-23 23:17:52 -07:00
David S. Miller
42675c6ff0
Add an elf_ifunc_invoke interface so that architectures can implement
...
the ifunc resolver calls however they wish.
2011-06-20 19:56:40 -07:00
David S. Miller
9b849836f5
sparc: Fix LD_BIND_NOW with multiarch.
2011-06-07 19:51:06 -07:00
Ulrich Drepper
e6c6149412
Fix memory leak in TLS of loaded objects.
2011-04-10 22:43:01 -04:00
Mike Frysinger
03592fc7ea
sparc64: Relax tls linking test.
2011-03-10 00:38:59 -08:00
David S. Miller
012d35f761
Fix sparc64 bzero on non-Niagara systems.
2011-03-03 13:25:36 -08:00
Ryan S. Arnold
30950a5fd2
Make PowerPC64 default to nonexecutable stack
2010-12-19 22:49:01 -05:00
Jakub Jelinek
9ff8d36f27
Correct implementation of fmaf.
2010-10-11 09:27:05 -04:00
David S. Miller
462a5227b0
sparc: Optimize strlen using techniques from powerpc implementation.
2010-03-09 06:42:53 -08:00
David S. Miller
2fe000dfd6
sparc32: Fix non-v9 build failure in memcpy.
2010-03-09 06:37:45 -08:00
David S. Miller
d6d1c4c87c
sparc64: Fix handling of R_SPARC_TLS_LE_* relocations.
2010-03-09 03:48:24 -08:00
David S. Miller
65ba5b4661
sparc32: Remove unused code.
...
2010-03-04 David S. Miller <davem@davemloft.net>
* sysdeps/sparc/sparc32/sparcv8/udiv_qrnnd.S: Delete.
* sysdeps/sparc/sparc32/udiv_qrnnd.S: Delete.
2010-03-04 04:25:37 -08:00
David S. Miller
605277213e
sparc64: Use dbl-64/wordsize-64 math lib code.
...
* sysdeps/sparc/sparc64/Implies: Add ieee754/dbl-64/wordsize-64 entry.
2010-03-04 01:02:45 -08:00
David S. Miller
7ec1221ff7
sparc: Use ba,a,pt in PLTs and fix bugs in R_SPARC_JMP_IREL handling.
...
2010-03-03 David S. Miller <davem@davemloft.net>
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_lazy_rel): Must
pass '1' for 't' argument to sparc_fixup_plt.
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_lazy_rel):
Likewise.
* sysdeps/sparc/sparc32/dl-plt.h (OPCODE_BA_PT): Define.
(sparc_fixup_plt): Document 't' argument. Enable branch
optimization and use v9 branches when possible. Explain why we
cannot unconditionally patch the branch into the first PLT
instruction.
* sysdeps/sparc/sparc64/dl-plt.h (sparc64_fixup_plt): Document 't'
argument. Use v9 branches when possible. Explain why we can in
fact unconditionally use a branch in the first PLT instruction
here.
2010-03-03 02:14:02 -08:00
David S. Miller
3afd5a3b55
sparc: Add multiarch support for memset/bzero/memcpy.
...
2010-02-25 David S. Miller <davem@davemloft.net>
* sysdeps/sparc/elf/rtld-global-offsets.sym: New file.
* sysdeps/sparc/Makefile (csu): Add rtld-global-offsets.sym to
gen-as-const-headers.
* sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile: New file.
* sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy.S: New file.
* sysdeps/sparc/sparc32/sparcv9/multiarch/memset.S: New file.
* sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: Move to...
* sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy-ultra3.S: ...here.
* sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: Move to...
* sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy-niagara1.S: ...here.
* sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: Move to...
* sysdeps/sparc/sparc32/sparcv9/multiarch/memset-niagara1.S: ...here.
* sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: Move to...
* sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy-niagara2.S: ...here.
* sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: Removed.
* sysdeps/sparc/sparc64/multiarch/Makefile: New file.
* sysdeps/sparc/sparc64/sparcv9v/memcpy.S: Move to...
* sysdeps/sparc/sparc64/multiarch/memcpy-niagara1.S: ...here.
* sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: Move to...
* sysdeps/sparc/sparc64/multiarch/memcpy-niagara2.S: ...here.
* sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Move to...
* sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S: ...here.
* sysdeps/sparc/sparc64/sparcv9v/memset.S: Move to...
* sysdeps/sparc/sparc64/multiarch/memset-niagara1.S: ...here.
* sysdeps/sparc/sparc64/sparcv9v2/memset.S: Removed.
* sysdeps/sparc/sparc64/multiarch/memcpy.S: New file.
* sysdeps/sparc/sparc64/multiarch/memset.S: New file.
2010-02-25 23:58:51 -08:00
David S. Miller
e44f6f89da
sparc: Pull bcopy/memmove out of memcpy.S implementations.
...
2010-02-25 David S. Miller <davem@davemloft.net>
* sysdeps/sparc/sparc32/bcopy.c: Delete.
* sysdeps/sparc/sparc32/memmove.c: Delete.
* sysdeps/sparc/sparc32/sparcv9/bcopy.c: Delete.
* sysdeps/sparc/sparc32/sparcv9/memmove.c: Delete.
* sysdeps/sparc/sparc64/bcopy.c: Delete.
* sysdeps/sparc/sparc64/memmove.c: Delete.
* sysdeps/sparc/sparc64/memcopy.h: New.
* sysdeps/sparc/sparc32/memcpy.S (bcopy, memmove): Remove.
* sysdeps/sparc/sparc64/memcpy.S (bcopy, memmove): Likewise.
* sysdeps/sparc/sparc64/sparcv9b/memcpy.S (bcopy, memmove): Likewise.
* sysdeps/sparc/sparc64/sparcv9v/memcpy.S (bcopy, memmove): Likewise.
* sysdeps/sparc/sparc64/sparcv9v2/memcpy.S (bcopy, memmove): Likewise.
2010-02-25 23:58:50 -08:00
David S. Miller
dbcaf07c32
sparc: Reimplement 64-bit aligned copy routines and remove from memcpy files.
...
2010-02-25 David S. Miller <davem@davemloft.net>
* sysdeps/sparc/sparc64/Makefile: Add align-cpy rule.
* sysdeps/sparc/sparc64/align-cpy.S: New.
* sysdeps/sparc/sparc64/memcpy.S (__align_cpy_1, __align_cpy_2,
__align_cpy_4, __align_cpy_8, __align_cpy_16): Remove.
* sysdeps/sparc/sparc64/sparcv9b/memcpy.S (__align_cpy_1,
__align_cpy_2, __align_cpy_4, __align_cpy_8, __align_cpy_16):
Remove.
* sysdeps/sparc/sparc64/sparcv9v/memcpy.S (__align_cpy_1,
__align_cpy_2, __align_cpy_4, __align_cpy_8, __align_cpy_16):
Remove.
* sysdeps/sparc/sparc64/sparcv9v2/memcpy.S (__align_cpy_1,
__align_cpy_2, __align_cpy_4, __align_cpy_8, __align_cpy_16):
Remove.
2010-02-25 23:58:50 -08:00
David S. Miller
2daff75bab
sparc: Fix v9 memchr with long buffer lengths.
...
test-memchr fails on 32-bit sparc with v9 optimized memchr because
it uses signed branch comparisons on the buffer pointers.
2010-02-20 13:48:06 -08:00