summaryrefslogtreecommitdiff
path: root/sysdeps
AgeCommit message (Collapse)AuthorFilesLines
2012-04-18Remove all traces of reg_char.David S. Miller1-3/+0
* sysdeps/generic/memcopy.h (reg_char): Delete. * debug/strcat_chk.c: Use char, not reg_char. * debug/strcpy_chk.c: Likewise. * debug/strncat_chk.c: Likewise. * debug/strncpy_chk.c: Likewise. * string/memchr.c: Likewise. * string/memrchr.c: Likewise. * string/rawmemchr.c: Likewise. * string/strcat.c: Likewise. * string/strchr.c: Likewise. * string/strchrnul.c: Likewise. * string/strcmp.c: Likewise. * string/strcpy.c: Likewise. * string/strncat.c: Likewise. * string/strncmp.c: Likewise. * string/strncpy.c: Likewise.
2012-04-18Have memmove call __builtin_memcopy on PowerPC if src and dest don't overlap.Will Schmidt1-0/+119
2012-04-18Further simplify power6 wordcopy by removing switch statements.Will Schmidt2-72/+4
This fix replaces switch statements that contain individual [fwd|bwd]_align_merge (<constant>) calls with a single [fwd|bwd]_align_merge (align) call.
2012-04-18Simplify power6 wordcopy by adding [fwd|bwd]_align_merge macros.Will Schmidt2-272/+79
2012-04-18Forgot to delete the sparc64 memcopy.h which tries to include the sparc32 oneDavid S. Miller1-1/+0
* sysdeps/sparc/sparc64/memcopy.h: Delete.
2012-04-18Finish ilogb changesAndreas Jaeger5-13/+6
[BZ# 6794] * sysdeps/ieee754/ldbl-96/s_ilogbl.c: Moved to ... * sysdeps/ieee754/ldbl-96/e_ilogbl.c: ... here. Rename __ilogbl to __ieee754_ilogbl and remove weak_alias. * sysdeps/ieee754/ldbl-128/s_ilogbl.c: Moved to ... * sysdeps/ieee754/ldbl-128/e_ilogbl.c: ... here. Rename __ilogbl to __ieee754_ilogbl and remove weak_alias. * sysdeps/ieee754/ldbl-64-128/s_ilogbl.c: Moved to ... * sysdeps/ieee754/ldbl-64-128/e_ilogbl.c: ... here. * sysdeps/sparc/sparc64/soft-fp/s_ilogbl.c: Moved to ... * sysdeps/sparc/sparc64/soft-fp/e_ilogbl.c: ... here. Rename __ilogbl to __ieee754_ilogbl and remove weak_alias.
2012-04-17There is no legitimate reason to override reg_char on sparc32.David S. Miller1-20/+0
* sysdeps/sparc/sparc32/memcopy.h: Delete.
2012-04-18Remove useless __ilogb*_finite aliasesAndreas Schwab6-6/+0
2012-04-17Fix ilogb exception and errno (bug 6794)Adhemerval Zanella10-23/+46
[BZ #6794] Following Joseph comments about bug 6794, here is a proposed fix. It turned out to be a large fix mainly because I had to move some file along to follow libm files/names conventions. Basically I have added wrappers (w_ilogb.c, w_ilogbf.c, w_ilogbl.c) that now calls the symbol '__ieee754_ilogb'. The wrappers checks for '__ieee754_ilogb' output and set the errno and raise exceptions as expected. The '__ieee754_ilogb' is implemented in sysdeps. I have moved the 's_ilogb[f|l]' files to e_ilogb[f|l] and renamed the '__ilogb[f|l]' to '__ieee754_ilogb[f|l]'. I also found out a bug in i386 and x86-64 assembly coded ilogb implementation where it raises a FE_DIVBYZERO when argument is '0.0'. I corrected this issue as well. Finally I added the errno and FE_INVALID tests for 0.0, NaN and +-InF argument. Tested on i386, x86-64, ppc32 and ppc64.
2012-04-16Reverse arguments of fdivp in i386 code.Marek Polacek1-2/+2
2012-04-13Check __ILP32__ instead of __LP64__H.J. Lu3-3/+3
* elf/tst-auditmod1.c: Check __ILP32__ instead of __LP64__. * elf/tst-auditmod3b.c: Likewise. * elf/tst-auditmod4b.c: Likewise. * elf/tst-auditmod5b.c: Likewise. * elf/tst-auditmod6b.c: Likewise. * elf/tst-auditmod6c.c: Likewise. * elf/tst-auditmod7b.c: Likewise. * sysdeps/x86_64/ffsll.c (ffsl): Likewise. * sysdeps/x86_64/preconfigure.in: Likewise. * sysdeps/x86_64/preconfigure: Regenerated.
2012-04-13Add __ILP32__ check when defining __WORDSIZEH.J. Lu1-1/+1
2012-04-13Fix variable check in sparc clock frequency probing.Antoine Balestrat1-1/+1
* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c (__get_clockfreq_via_proc_openprom): Fix test on wrong variable.
2012-04-11Update sparc libm ULPs.David S. Miller1-10/+124
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-04-11Add __snseconds_t and __SNSECONDS_T_TYPEH.J. Lu4-0/+4
2012-04-10Use __builtin_bswap32/64 in x86_64 <bits/byteswap.h>H.J. Lu1-32/+53
2012-04-11New ld.so argument --inhibit-ldcache to disable ld.so.cache lookupSiddhesh Poyarekar1-1/+4
It may sometimes be desirable to make the dynamic linker only pick up libraries from the library path and rpath and not look at the ld.so.cache that ldconfig generates. An example of such a use case is the glibc testsuite where the dynamic linker must not be influenced by any external paths or caches. This change adds a new option --inhibit-ldcache that when used, tells the dynamic linker to not use ld.so.cache even if it is available.
2012-04-09Fix spurious overflow exceptions from x86/x86_64 powl (bug 13872).Joseph Myers2-24/+38
2012-04-09Fix ctan, ctanh overflow (bug 11521).Joseph Myers2-20/+128
2012-04-09Fix missing clobber in i386 __sincos_code asm.Roland McGrath1-7/+7
2012-04-09Fix missing overflow exceptions from pow (bug 13873).Joseph Myers1-2/+3
2012-04-09Fix x86 pow inaccuracy for large integer exponents (bug 706).Joseph Myers2-4/+64
2012-04-08Use __kernel_standard instead of __kernel_standard_f in exp wrapper (bug 13705).Aurelien Jarno1-2/+2
2012-04-08memset: also update copyright yearsMike Frysinger2-2/+2
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-04-07memset: fix define usage for shared libsMike Frysinger2-2/+2
The proper define to check "am I in a shared lib" is "SHARED", not "PIC". The two new memset_chk functions incorrectly depend on "PIC". Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-04-07Handle some new sparc relocation types.David S. Miller2-0/+18
* elf/elf.h (R_SPARC_WDISP10): Define. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Handle R_SPARC_SIZE32. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Handle R_SPARC_SIZE64 and R_SPARC_H34.
2012-04-06Add byteswap-16.h for __bswap_16H.J. Lu6-87/+169
2012-04-05Reduce down to one definition of _ELF_DYNAMIC_DO_RELOC.David S. Miller4-13/+0
* elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): Reduce down to one definition. * sysdeps/powerpc/powerpc32/dl-machine.h (ELF_MACHINE_PLTREL_OVERLAP): Delete. * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_PLTREL_OVERLAP): Likewise. * sysdeps/sparc/sparc32/dl-machine.h (ELF_MACHINE_PLTREL_OVERLAP): Likewise. * sysdeps/sparc/sparc64/dl-machine.h (ELF_MACHINE_PLTREL_OVERLAP): Likewise.
2012-04-05Fix size parameter comparisions.Michael Matz1-6/+6
[BZ #13592] There are several signed compares of the size argument, whereas it really is unsigned. Depending on situations e.g. a "memset(ptr, 0, -1)" segfault (but for the wrong reasons, because jumping into nirvana) or succeeds even. In normal use this is harmless, as a size with signbit set indicates more than half the address space which on x86_64 is impossible to allocate, but as the size is used to index some jump tables this potentially could have other unwanted side effects.
2012-04-05Fix return value of SH fesetround.Kaz Kojima1-3/+3
2012-04-05Set SH fpcsr register which read again.Kaz Kojima2-1/+8
2012-04-05Fix SH4 fraiseexcpt so to generate exceptions appropriately.Kaz Kojima1-6/+36
2012-04-05Add support fedisableexcept, feenableexcept, fegetexcept and feupdateenvKaz Kojima4-0/+151
for SH.
2012-04-05[BZ #12340] Fix return code of the Hurd's ttyname_r.Simon Josefsson1-2/+2
2012-04-05[BZ #13553] Remove pre-ISO C supportThomas Schwinge2-4/+4
The bits missing from a784e502472fb3a1afa4d01a47c66b52d23e00f6.
2012-04-03Add __bswap_64 definition for non GCC compilers.Andreas Jaeger3-14/+44
[BZ#13926] Currently __bswap_64 is not defined at all for non-GCC compilers. Define it but guard it with __GLIBC_HAVE_LONG_LONG. endian.h uses __bswap_64, make the functions only available if __GLIBC_HAVE_LONG_LONG is defined.
2012-04-02Call __ctype_init in early glibc startup.Thomas Schwinge4-5/+20
This adds the bits missing from fd5bdc0924e0cfd1688b632068c1b26f3b0c88da.
2012-03-30optimize the following memcpy: sysdeps/i386/i686/multiarch/memcpy-ssse3.SLiubov Dmitrieva1-536/+1449
I've improved the following implementation of memcpy: "sysdeps/i386/i686/multiarch/memcpy-ssse3.S". The patch includes some minor style fixes, but the important part is just using prefetch loops for the case: DATA_CACHE_SIZE_HALF <= len < SHARED_CACHE_SIZE_HALF and src and dst pointers have unequal 16 byte alignments. This gives from 6% - 50% performance boost on the atom machine, about 24,73% in geometric mean.
2012-03-30Comment fixes for mmsghdrUlrich Drepper1-2/+3
2012-03-28Optimize mempcpy on sparc.David S. Miller8-13/+112
* sysdeps/sparc/sparc32/memcpy.S: Implement mempcpy using a stub that branches into memcpy. * sysdeps/sparc/sparc64/memcpy.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy-niagara1.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy-niagara2.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S: Likewise. * sysdeps/sparc/sparc64/multiarch/memcpy.S: Add mempcpy multiarch bits. * sysdeps/sparc/sparc64/rtld-memcpy.c: Include generic mempcpy implementation too. * sysdeps/sparc/mempcpy.S: New file.
2012-03-28Do not elide the libc hidden def of sparc's memset/memcpy when multiarching.David S. Miller2-10/+10
* sysdeps/sparc/sparc64/multiarch/memcpy.S: Provide a hidden def to the IFUNC routine in the libc case. * sysdeps/sparc/sparc64/multiarch/memcpy.S: Likewise.
2012-03-28Use generic memset/memcpy in rtld on sparcv9/sparc64.David S. Miller8-0/+8
* sysdeps/sparc/sparc32/sparcv9/multiarch/rtld-memset.c: New file. * sysdeps/sparc/sparc32/sparcv9/multiarch/rtld-memcpy.c: New file. * sysdeps/sparc/sparc32/sparcv9/rtld-memset.c: New file. * sysdeps/sparc/sparc32/sparcv9/rtld-memcpy.c: New file. * sysdeps/sparc/sparc64/multiarch/rtld-memset.c: New file. * sysdeps/sparc/sparc64/multiarch/rtld-memcpy.c: New file. * sysdeps/sparc/sparc64/rtld-memset.c: New file. * sysdeps/sparc/sparc64/rtld-memcpy.c: New file.
2012-03-28Fix bugs and improve performance of niagara memset/bzero.David S. Miller1-4/+50
* sysdeps/sparc/sparc64/multiarch/memset-niagara1.S: Unroll main loop to 256 bytes instead of 64 bytes and fix test signedness.
2012-03-28Make sparc's -fPIC addition to ASFLAGS-.os more robust.David S. Miller3-6/+3
* sysdeps/sparc/Makefile: Add -fPIC to ASFLAGS-.os here.... * sysdeps/sparc/sparc32/Makefile: rather than here... * sysdeps/sparc/sparc64/Makefile: and here.
2012-03-28Fix pow of negative numbers to integer exponents (bugs 369, 2678, 3866).Joseph Myers5-17/+158
2012-03-28Avoid overflows from long double functions using __kernel_standard.Joseph Myers4-4/+37
2012-03-28Fix whitespaceAndreas Jaeger2-2/+1
2012-03-28Regenerate configure filesAndreas Jaeger5-0/+455
2012-03-28Move sysdeps/s390/s390-64/elf filesAndreas Jaeger9-277/+30
* sysdeps/s390/s390-64/elf/bsd-_setjmp.S: Moved to ... * sysdeps/s390/s390-64/bsd-_setjmp.S: ... here. * sysdeps/s390/s390-64/elf/bsd-setjmp.S: Moved to ... * sysdeps/s390/s390-64/bsd-setjmp.S: ... here. * sysdeps/s390/s390-64/elf/setjmp.S: Moved to ... * sysdeps/s390/s390-64/setjmp.S: ... here. * sysdeps/s390/s390-64/elf/configure.in: Moved to ... * sysdeps/s390/s390-64/configure.in: ... here * sysdeps/s390/s390-64/elf/configure: Delete file. * sysdeps/s390/s390-64/elf/start.S: Moved to ... * sysdeps/s390/s390-64/start.S: ... here. * sysdeps/s390/s390-64/elf/configure: Delete.
2012-03-28Move sysdeps/s390/s390-32/elf filesAndreas Jaeger9-310/+29
* sysdeps/s390/s390-32/elf/bsd-_setjmp.S: Moved to ... * sysdeps/s390/s390-32/bsd-_setjmp.S: ... here. * sysdeps/s390/s390-32/elf/bsd-setjmp.S: Moved to ... * sysdeps/s390/s390-32/bsd-setjmp.S: ... here. * sysdeps/s390/s390-32/elf/setjmp.S: Moved to ... * sysdeps/s390/s390-32/setjmp.S: ... here. * sysdeps/s390/s390-32/elf/configure.in: Moved to ... * sysdeps/s390/s390-32/configure.in: ... here. * sysdeps/s390/s390-32/elf/configure: Delete file. * sysdeps/s390/s390-32/elf/start.S: Moved to ... * sysdeps/s390/s390-32/start.S: ... here.