aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/sparc
AgeCommit message (Collapse)AuthorFilesLines
2013-05-16MIPS: soft-fp NaN representation correctionsMaciej W. Rozycki2-0/+2
[BZ #15442] This adds support for the inverse interpretation of the quiet bit of IEEE 754 floating-point NaN data that some processors use. This includes in particular MIPS architecture processors; the payload used for the canonical qNaN encoding is updated accordingly so as not to interfere with the quiet bit.
2013-05-14Update Sparc ULPs.David S. Miller1-6/+853
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-05-02Update Sparc ULPs.David S. Miller1-24/+4125
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-03-22Update sparc ULPs.David S. Miller1-4/+1002
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-03-20Move system-specific settings out of toplevel configure.in and config.make.in.Joseph Myers2-0/+3
2013-03-17Update Sparc ULPs.David S. Miller1-2/+14
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-02-15Remove bounded-pointers build system support.Joseph Myers2-3/+0
2013-02-13Remove __ptrvalue, __bounded and __unbounded.Joseph Myers1-5/+4
2013-02-04Add long-double sparc ULPs updates missing in previous commit.David S. Miller1-0/+36
2013-02-04Update sparc ULPs after Joseph's casin fixes.David S. Miller1-0/+126
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-02-04Remove CHECK_STRING, CHECK_STRING_NULL_OK and __ubp_memchr.Joseph Myers2-6/+0
2013-02-01Remove BOUNDED_N and BOUNDED_1.Joseph Myers1-3/+0
2013-01-23Add a minor 'cas' atomic optimization on sparc.David S. Miller2-12/+30
* sysdeps/sparc/sparc32/sparcv9/bits/atomic.h (__arch_compare_and_exchange_val_32_acq): Use %g0 as second argument of CAS if possible. * sysdeps/sparc/sparc64/bits/atomic.h (__arch_compare_and_exchange_val_32_acq): Likewise. (__arch_compare_and_exchange_val_64_acq): Likewise.
2013-01-21Use libgcc unwinder for sparc backtraces, if available.David S. Miller6-57/+188
* sysdeps/sparc/backtrace.c: New file. * sysdeps/sparc/sparc32/backtrace.h: New file. * sysdeps/sparc/sparc32/sparcv9/backtrace.h: New file. * sysdeps/sparc/sparc64/backtrace.h: New file. * sysdeps/sparc/sparc64/backtrace.c: Delete. * sysdeps/sparc/Makefile (CFLAGS-backtrace.c): Add -funwind-tables.
2013-01-17Update sparc ULPs.David S. Miller1-0/+74
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-01-16Optimize trunc{,f} on sparc.David S. Miller14-2/+503
* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Add vis3 trunc{,f} to libm-sysdep_routes. * sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_trunc-vis3.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_trunc.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_truncf-vis3.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_truncf.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/s_trunc.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/s_truncf.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_trunc-vis3.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_trunc.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_truncf-vis3.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.S: New file. * sysdeps/sparc/sparc64/fpu/s_trunc.S: New file. * sysdeps/sparc/sparc64/fpu/s_truncf.S: New file.
2013-01-15Optimize nearbyint{,f} on sparc.David S. Miller14-2/+566
* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Add vis3 nearbyint{,f} to libm-sysdep_routes. * sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint-vis3.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf-vis3.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyint.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyintf.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint-vis3.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf-vis3.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.S: New file. * sysdeps/sparc/sparc64/fpu/s_nearbyint.S: New file. * sysdeps/sparc/sparc64/fpu/s_nearbyintf.S: New file.
2013-01-14Optimize sparc {ceil,floor}{,f} using vis2 'siam' instruction.David S. Miller27-223/+629
* sysdeps/sparc/sparc-ifunc.h (SPARC_ASM_IFUNC2): New macro. (SPARC_ASM_VIS2_IFUNC): Likewise. (SPARC_ASM_VIS3_VIS2_IFUNC): Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil-vis3.S: Make use of 'siam' instruction. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf-vis3.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf-vis3.S: Likewise. * sysdeps/sparc/sparc64/fpu/multiarch/s_ceil-vis3.S: Likewise. * sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf-vis3.S: Likewise. * sysdeps/sparc/sparc64/fpu/multiarch/s_floor-vis3.S: Likewise. * sysdeps/sparc/sparc64/fpu/multiarch/s_floorf-vis3.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil-vis2.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf-vis2.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis2.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf-vis2.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_ceil-vis2.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf-vis2.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_floor-vis2.S: New file. * sysdeps/sparc/sparc64/fpu/multiarch/s_floorf-vis2.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S: Hook in new VIS2 routines. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf.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_floor.S: Likewise. * sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Add new VIS2 routines to libm-sysdep_routines. * sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Likewise.
2013-01-14Optimize fdim/fdimf on sparc.David S. Miller11-1/+312
* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Add vis3 fdim/fdimf to libm-sysdep_routines. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim-vis3.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf-vis3.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/s_fdim.S: New file. * sysdeps/sparc/sparc32/sparcv9/fpu/s_fdimf.S: New file. * sysdeps/sparc/sparc32/fpu/s_fdim.S: New file. * sysdeps/sparc/sparc32/fpu/s_fdimf.S: New file. * sysdeps/sparc/sparc64/fpu/s_fdim.S: New file. * sysdeps/sparc/sparc64/fpu/s_fdimf.S: New file.
2013-01-14Fix up log format, wrap a long line.Roland McGrath1-1/+2
2013-01-11Add 64-bit VIS3 optimized GMP routines for sparc.David S. Miller11-0/+673
* math/Makefile: Recognize gmp-sysdep_routines. * sysdeps/sparc/sparc64/multiarch/Makefile: Add VIS3 optimized GMP routines to sysdeps. * sysdeps/sparc/sparc64/multiarch/add_n-vis3.S: New file. * sysdeps/sparc/sparc64/multiarch/add_n.S: New file. * sysdeps/sparc/sparc64/multiarch/addmul_1-vis3.S: New file. * sysdeps/sparc/sparc64/multiarch/addmul_1.S: New file. * sysdeps/sparc/sparc64/multiarch/mul_1-vis3.S: New file. * sysdeps/sparc/sparc64/multiarch/mul_1.S: New file. * sysdeps/sparc/sparc64/multiarch/sub_n-vis3.S: New file. * sysdeps/sparc/sparc64/multiarch/sub_n.S: New file. * sysdeps/sparc/sparc64/multiarch/submul_1-vis3.S: New file. * sysdeps/sparc/sparc64/multiarch/submul_1.S: New file.
2013-01-11Redo sparc 32-bit V9 GMP optimizations with fixed copyrights.David S. Miller3-3/+233
* sysdeps/sparc/sparc32/sparcv9/mul_1.S: Properly optimize for 32-bit sparc V9 rather than using V8 code. * sysdeps/sparc/sparc32/sparcv9/addmul_1.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/submul_1.S: Likewise.
2013-01-11Adjust sparc for Roland's multiarch sysdep directory changes.David S. Miller1-4/+0
* sysdeps/sparc/sparc32/sparcv9/fpu/unix/sysv/linux/multiarch/Implies: Move to... * sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/fpu/multiarch/Implies: Here.
2013-01-10Undo receive sparc 32-bit V9 gmp routine commit.David S. Miller3-207/+3
* sysdeps/sparc/sparc32/sparcv9/mul_1.S: Revert previous changes. * sysdeps/sparc/sparc32/sparcv9/addmul_1.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/submul_1.S: Likewise.
2013-01-10Optimize sparc 32-bit V9 GMP multiply routines.David S. Miller3-3/+207
* sysdeps/sparc/sparc32/sparcv9/mul_1.S: Properly optimize for 32-bit sparc V9 rather than using V8 code. * sysdeps/sparc/sparc32/sparcv9/addmul_1.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/submul_1.S: Likewise.
2013-01-10Update sparc ULPs for new casin{,h} tests.David S. Miller1-0/+114
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-01-04Update Sparc ULPs.David S. Miller1-0/+5
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-01-02Update copyright notices with scripts/update-copyrights.Joseph Myers278-287/+278
2013-01-01Add script to update copyright notices and reformat some to facilitate its use.Joseph Myers1-2/+1
2012-11-28Update sparc ULPs for recently added pow tests.David S. Miller1-0/+25
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-11-19Fix spurious underflows in ldbl-128 atan implementation.David S. Miller1-0/+3
With help from Joseph Myers. * sysdeps/ieee754/ldbl-128/s_atanl.c (__atanl): Handle tiny and very large arguments properly. * math/libm-test.inc (atan_test): New tests. (atan2_test): New tests. * sysdeps/sparc/fpu/libm-test-ulps: Update. * sysdeps/x86_64/fpu/libm-test-ulps: Update.
2012-11-18Correct tinyness handling in long-double and float y0/y1.David S. Miller1-1/+46
With help from Joseph Myers. * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Adjust tinyness cutoff to 2**-13. * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Adjust tinyness cutoff to 2**-25. * sysdeps/ieee754/ldbl-128/e_j0l.c (U0): New constant. ( __ieee754_y0l): Avoid arithmetic underflow when 'x' is very small. * sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_y1l): Likewise. * math/libm-test.inc (y0_test): New tests. (y1_test): New tests. * sysdeps/i386/fpu/libm-test-ulps: Update. * sysdeps/x86_64/fpu/libm-test-ulps: Update. * sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-11-13Add support for sparc cryptographic hash opcodes.David S. Miller15-0/+455
* crypt/Makefile: Move test targets after toplevel Rules inclusion. Grab any necessary sysdep routines when linking. * crypt/md5.c (md5_process_block): Remove define, we will always name it __md5_process_block. (md5_finish_ctx): Update md5_process_block call. (md5_stream): Likewise. (md5_process_bytes): Likewise. (md5_process_block): Rename to __md5_process_block and move to ... * crypt/md5-block.c: ... here. * crypt/sha256.c (sha256_process_block): Move to ... * crypt/sha256-block.c: ... here. * crypt/sha512.c (sha512_process_block): Move to ... * crypt/sha512-block.c: ... here. * locale/Makefile (CFLAGS-md5.c): Define to add crypt/ to include path. * sysdeps/sparc/sparc-ifunc.c (sparc_libc_ifunc): Define. * sysdeps/sparc/sparc64/multiarch/Makefile (libcrypt-sysdep_routines): Add crypto assembler sysdeps when in crypt subdir. (localedef-aux): Add md5 crypto assembler when in locale subdir. * sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile: Mirror sparc64 multiarch changes. * sysdeps/sparc/sparc64/multiarch/md5-block.c: New file. * sysdeps/sparc/sparc64/multiarch/md5-crop.S: New file. * sysdeps/sparc/sparc64/multiarch/sha256-block.c: New file. * sysdeps/sparc/sparc64/multiarch/sha256-crop.S: New file. * sysdeps/sparc/sparc64/multiarch/sha512-block.c: New file. * sysdeps/sparc/sparc64/multiarch/sha512-crop.S: New file. * sysdeps/sparc/sparc32/sparcv9/multiarch/md5-block.c: New file. * sysdeps/sparc/sparc32/sparcv9/multiarch/md5-crop.S: New file. * sysdeps/sparc/sparc32/sparcv9/multiarch/sha256-block.c: New file. * sysdeps/sparc/sparc32/sparcv9/multiarch/sha256-crop.S: New file. * sysdeps/sparc/sparc32/sparcv9/multiarch/sha512-block.c: New file. * sysdeps/sparc/sparc32/sparcv9/multiarch/sha512-crop.S: New file.
2012-11-03Make fma use of Dekker and Knuth algorithms use round-to-nearest (bug 14796).Joseph Myers2-1/+14
2012-11-03Make fenv.h FE_* macros usable in #if (bug 3439).Joseph Myers1-18/+27
2012-10-25Add IFUNC test lists for memcpy/mempcpy/memset on sparc.David S. Miller4-0/+78
* sysdeps/sparc/sparc64/multiarch/memcpy.S: Add comments for ifunc-impl-list.c * sysdeps/sparc/sparc64/multiarch/memset.S: Likewise. * sysdeps/sparc/sparc64/multiarch/ifunc-impl-list.c: New file. * sysdeps/sparc/sparc32/sparcv9/multiarch/ifunc-impl-list.c: New file.
2012-10-09Add missing magic to GLIBC_PROVIDES.Roland McGrath1-82/+0
2012-10-06Fix Niagara-4 memcpy bug on 32-bit.David S. Miller1-0/+3
* sysdeps/sparc/sparc64/multiarch/memcpy-niagara4.S: On 32-bit, clear upper 32-bits of the length value in %o2 since we use branch-on-register tests which consider the entire 64-bit register.
2012-10-05Add Niagara-4 optimized memset/bzero implementation.David S. Miller5-6/+153
* sysdeps/sparc/sparc64/multiarch/memset-niagara4.S: New file. * sysdeps/sparc/sparc32/sparcv9/multiarch/memset-niagara4.S: New file. * sysdeps/sparc/sparc64/multiarch/Makefile: Add to sysdep_routines. * sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile: Likewise. * sysdeps/sparc/sparc64/multiarch/memset.S: Use Niagara-4 memset and bzero when HWCAP_SPARC_CRYPTO is present.
2012-09-28Uncorrupt Sparc ULPS file.David S. Miller1-2/+1
* sysdeps/sparc/fpu/libm-test-ulps: Fix garbage in file.
2012-09-28Revert "Add missed ildouble case in yesterday's sparc ULPs update for ↵David S. Miller1-2/+0
clog/clog10." This reverts commit 084b8fabd28ab541efbe5ce7ef6008107a4b86ea. Sorry something put garbage into the string, will debug this.
2012-09-28Add missed ildouble case in yesterday's sparc ULPs update for clog/clog10.David S. Miller1-0/+2
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-09-28Add Niagara-4 optimized memcpy and mempcpy.David S. Miller5-4/+356
* sysdeps/sparc/sparc64/multiarch/memcpy-niagara4.S: New file. * sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy-niagara4.S: New file. * sysdeps/sparc/sparc64/multiarch/Makefile: Add to sysdep_routines. * sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile: Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy.S: Use Niagara-4 memcpy and mempcpy when HWCAP_SPARC_CRYPTO is set.
2012-09-28Define VERSYMIDX/VALIDX/ADDRIDX in ldsodefs.hH.J. Lu2-10/+0
2012-09-27Update sparc ULPS for recent clog/clog10 activity.David S. Miller1-2/+176
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-09-27Fix sparc64 crashes with LD_BIND_NOW and --enable-bind-now.David S. Miller1-1/+8
[BZ #14376] * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Do not pass reloc->r_addend in as the 'high' argument to sparc64_fixup_plt when handling R_SPARC_JMP_IREL relocations.
2012-09-05Recognize new sparc hwcap bits.David S. Miller3-3/+6
* sysdeps/sparc/bits/hwcap.h (HWCAP_SPARC_PAUSE, HWCAP_SPARC_CBCOND, HWCAP_SPARC_CRYPTO): Define. * sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Increase to 27. * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add new entries.
2012-09-05Update sparc ULPs for recently added math tests.David S. Miller1-0/+12
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-09-04Use sparcv8 GMP routines when building 32-bit sparcv9.David S. Miller3-0/+3
* sysdeps/sparc/sparc32/sparcv9/addmul_1.S: New file. * sysdeps/sparc/sparc32/sparcv9/submul_1.S: New file. * sysdeps/sparc/sparc32/sparcv9/mul_1.S: New file.
2012-08-16Fifth argument of la_pltenter() is not constant.Carlos O'Donell1-2/+2
The original runtime linker auditing interface described by Solaris allows the 5th argument of la_pltenter() to be modified. This patch cleans up the ldsodefs.h definitions such that the 5th argument is not constant. At one point the 5th argument *was* constant but this was changed with commit 2413fdba7a02ba8916f75d17199a6e9133a8f7b0. This patch updates alpha, ia64, mips, sh and sparc with similar changes.