aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/sparc/sparc64
AgeCommit message (Collapse)Author
2014-06-25Remove stray includes of kernel-features.h.Joseph Myers
Now that files using __ASSUME_* macros have been made by <https://sourceware.org/ml/libc-alpha/2014-06/msg00543.html> to include <kernel-features.h> directly, any include from a file not using __ASSUME_* macros can safely be removed (as there will no longer be some other file relying on indirect inclusion via a header from which the include is being removed). This patch removes such unnecessary kernel-features.h includes. Tested x86_64 that disassembly of installed shared libraries is unchanged by this patch, except for line numbers in calls to __assert_fail from libc.so and ld.so. 2014-06-23 Joseph Myers <joseph@codesourcery.com> * nptl/createthread.c: Don't include kernel-features.h. * nptl/pthread_cancel.c: Likewise. * nptl/pthread_condattr_setclock.c: Likewise. * nptl/sysdeps/unix/sysv/linux/pt-raise.c: Likewise. * nptl/sysdeps/unix/sysv/linux/pthread_getcpuclockid.c: Likewise. * nptl/sysdeps/unix/sysv/linux/pthread_kill.c: Likewise. * nptl/sysdeps/unix/sysv/linux/pthread_sigqueue.c: Likewise. * nptl/sysdeps/unix/sysv/linux/raise.c: Likewise. * nptl/sysdeps/unix/sysv/linux/s390/s390-32/pt-vfork.S: Likewise. * nptl/sysdeps/unix/sysv/linux/s390/s390-32/vfork.S: Likewise. * nptl/sysdeps/unix/sysv/linux/s390/s390-64/pt-vfork.S: Likewise. * nptl/sysdeps/unix/sysv/linux/s390/s390-64/vfork.S: Likewise. * nptl/sysdeps/unix/sysv/linux/timer_create.c: Likewise. * nptl/sysdeps/unix/sysv/linux/timer_delete.c: Likewise. * nptl/sysdeps/unix/sysv/linux/timer_getoverr.c: Likewise. * nptl/sysdeps/unix/sysv/linux/timer_gettime.c: Likewise. * nptl/sysdeps/unix/sysv/linux/timer_routines.c: Likewise. * nptl/sysdeps/unix/sysv/linux/timer_settime.c: Likewise. * nscd/gai.c: Likewise. * nss/nss_db/db-open.c: Likewise. * sysdeps/generic/ldsodefs.h: Likewise. * sysdeps/sh/nptl/tls.h: Likewise. * sysdeps/unix/sysv/linux/aarch64/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h: Likewise. * sysdeps/unix/sysv/linux/aarch64/vfork.S: Likewise. * sysdeps/unix/sysv/linux/adjtime.c: Likewise. * sysdeps/unix/sysv/linux/alpha/xstatconv.h: Likewise. * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Likewise. * sysdeps/unix/sysv/linux/check_pf.c: Likewise. * sysdeps/unix/sysv/linux/clock_getcpuclockid.c: Likewise. * sysdeps/unix/sysv/linux/clock_getres.c: Likewise. * sysdeps/unix/sysv/linux/clock_gettime.c: Likewise. * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise. * sysdeps/unix/sysv/linux/clock_settime.c: Likewise. * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise. * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise. * sysdeps/unix/sysv/linux/dl-sysdep.c: Likewise. * sysdeps/unix/sysv/linux/generic/futimesat.c: Likewise. * sysdeps/unix/sysv/linux/generic/poll.c: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/fcntl.c: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/fxstatat.c: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/preadv.c: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/preadv64.c: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev.c: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev64.c: Likewise. * sysdeps/unix/sysv/linux/getcwd.c: Likewise. * sysdeps/unix/sysv/linux/getpagesize.c: Likewise. * sysdeps/unix/sysv/linux/getsysstats.c: Likewise. * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise. * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise. * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise. * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise. * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise. * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise. * sysdeps/unix/sysv/linux/ia64/system.c: Likewise. * sysdeps/unix/sysv/linux/if_index.c: Likewise. * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise. * sysdeps/unix/sysv/linux/ifreq.c: Likewise. * sysdeps/unix/sysv/linux/ldsodefs.h: Likewise. * sysdeps/unix/sysv/linux/lutimes.c: Likewise. * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise. * sysdeps/unix/sysv/linux/microblaze/nptl/vfork.S: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/accept4.c: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/recvmmsg.c: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/sendmmsg.c: Likewise. * sysdeps/unix/sysv/linux/mips/pread.c: Likewise. * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise. * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/mmap64.c: Likewise. * sysdeps/unix/sysv/linux/netlinkaccess.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_mask.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: Likewise. * sysdeps/unix/sysv/linux/pread.c: Likewise. * sysdeps/unix/sysv/linux/pread64.c: Likewise. * sysdeps/unix/sysv/linux/prof-freq.c: Likewise. * sysdeps/unix/sysv/linux/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise. * sysdeps/unix/sysv/linux/s390/system.c: Likewise. * sysdeps/unix/sysv/linux/sh/pread.c: Likewise. * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise. * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/sigpending.c: Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/xstatconv.c: Likewise. * sysdeps/unix/sysv/linux/sparc/system.c: Likewise. * sysdeps/unix/sysv/linux/syslog.c: Likewise. * sysdeps/unix/sysv/linux/system.c: Likewise. * sysdeps/unix/sysv/linux/testrtsig.h: Likewise. * sysdeps/unix/sysv/linux/timespec_get.c: Likewise. * sysdeps/unix/sysv/linux/ttyname.c: Likewise. * sysdeps/unix/sysv/linux/ttyname_r.c: Likewise. * sysdeps/unix/sysv/linux/utimensat.c: Likewise. * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/xstatconv.h: Likewise.
2014-06-25SPARC: Consolidate nptl/ subdirectories under linux/...Roland McGrath
2014-06-20Move remaining SPARC code out of nptl/.Roland McGrath
2014-06-20Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/.Joseph Myers
This patch cleans up for __ASSUME_ATFCTS now always being true for the supported Linux kernel versions by removing conditional code in sysdeps/unix/sysv/linux. Several fchownat.c files that were only present because of differences in the fallback syscalls used (depending on the architecture-specific names of chown-related syscalls for 32-bit uids) are removed. Files that looks like they could be replaced by syscalls.list entries have the standard "Consider moving to syscalls.list." comment (see bug 14138) added. Conditionals on the relevant __NR_* syscall numbers being defined are also removed, since my analysis indicated that the relevant syscalls are always defined for all relevant kernel versions using any affected file. Much of the removed fallback code had unbounded stack allocations, so this reduces the number of cases to consider for anyone reviewing uses of alloca and VLAs in glibc. There remain tests of __ASSUME_ATFCTS in io/openat.c (to determine whether to define __have_atfcts) and sysdeps/posix/getcwd.c (which also uses __have_atfcts); thus, the definition of __ASSUME_ATFCTS remains in kernel-features.h. The logical condition relevant there is whether openat64_not_cancel_3 is known to work. Hurd doesn't use this version of getcwd at all, so the conditionals in getcwd.c are always true in glibc. However, this code is also used in gnulib. So the best way to deal with the conditionals there may be for gnulib people to deal with merging all relevant changes in both directions between the glibc and gnulib versions of this file, at the end of which the openat conditionals should be in whatever form is best for gnulib, and hardcoded in the _LIBC case to having openat supported. Tested by comparing before-and-after disassembly of installed (stripped) shared libraries, on x86_64 and x86. On x86 the patch made no change to the disassembly; on x86_64, the only changes were in readlinkat, where formerly the return value from the readlinkat syscall was stored in an int variable before being converted to ssize_t for the return, and now the return value is returned directly without truncation to int. I think it's clearly correct not to truncate the return value (although I also think the truncation would not have been a user-visible bug because the kernel would never have returned a value it could have affected). * include/fcntl.h (__atfct_seterrno): Remove prototype. (__atfct_seterrno_2): Likewise. * sysdeps/unix/sysv/linux/alpha/dl-fxstatat64.c: Do not include <kernel-features.h>. (__ASSUME_ATFCTS): Do not undefine and redefine. * sysdeps/unix/sysv/linux/alpha/fxstatat.c [__ASSUME_ATFCTS] (__have_atfcts): Remove conditional definition. (__fxstatat([__NR_fstatat64]: Make code unconditional. (__fxstatat) [!__ASSUME_ATFCTS]: Remove conditional code and code unreachable if [__ASSUME_ATFCTS]. * sysdeps/unix/sysv/linux/dl-fxstatat64.c (__ASSUME_ATFCTS): Do not undefine and redefine. * sysdeps/unix/sysv/linux/faccessat.c: Do not include <kernel-features.h>. (faccessat) [__NR_faccessat]: Make code unconditional. (faccessat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/fchmodat.c: Do not include <kernel-features.h>. (fchmodat) [__NR_fchmodat]: Make code unconditional. (fchmodat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/fchownat.c: Do not include <kernel-features.h>. (fchownat) [__NR_fchownat]: Make code unconditional. (fchownat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/futimesat.c: Do not include <kernel-features.h>. (futimesat) [__NR_futimesat]: Make code unconditional. (futimesat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/fxstatat.c: Do not include <kernel-features.h>. (__fxstatat) [__NR_newfstatat]: Make code unconditional. (__fxstatat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/fxstatat64.c: Do not include <kernel-features.h>. (__fxstatat64) [__NR_fstatat64]: Make code unconditional. (__fxstatat64) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/i386/fchownat.c: Remove file. * sysdeps/unix/sysv/linux/i386/fxstatat.c: Do not include <kernel-features.h>. (__fxstatat) [__NR_fstatat64]: Make code unconditional. (__fxstatat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/linkat.c: Do not include <kernel-features.h>. (linkat) [__NR_linkat]: Make code unconditional. (linkat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/m68k/fchownat.c: Remove file. * sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c: Do not include <kernel-features.h>. (__fxstatat64) [__NR_newfstatat]: Make code unconditional. (__fxstatat64) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/mkdirat.c: Do not include <kernel-features.h>. (mkdirat) [__NR_mkdirat]: Make code unconditional. (mkdirat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/openat.c: Do not include <kernel-features.h>. [!__ASSUME_ATFCTS] (__atfct_seterrno): Remove function. [!__ASSUME_ATFCTS] (__have_atfcts): Remove variable. (OPENAT_NOT_CANCEL) [__NR_openat]: Make code unconditional. (OPENAT_NOT_CANCEL) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/powerpc/fchownat.c: Remove file. * sysdeps/unix/sysv/linux/readlinkat.c: Do not include <kernel-features.h>. (readlinkat) [__NR_readlinkat]: Make code unconditional. (readlinkat) [!__ASSUME_ATFCTS]: Remove conditional code. Return result of INLINE_SYSCALL directly, not via int variable. * sysdeps/unix/sysv/linux/renameat.c: Do not include <kernel-features.h>. [!__ASSUME_ATFCTS] (__atfct_seterrno_2): Remove function. (renameat) [__NR_renameat]: Make code unconditional. (renameat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Remove file. * sysdeps/unix/sysv/linux/sh/fchownat.c: Remove file. * sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Remove file. * sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c (__ASSUME_ATFCTS): Do not undefine and redefine. * sysdeps/unix/sysv/linux/symlinkat.c: Do not include <kernel-features.h>. (symlinkat) [__NR_symlinkat]: Make code unconditional. (symlinkat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/unlinkat.c: Do not include <kernel-features.h>. (unlinkat) [__NR_unlinkat]: Make code unconditional. (unlinkat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/wordsize-64/dl-fxstatat64.c (__ASSUME_ATFCTS): Do not undefine and redefine. * sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c: Do not include <kernel-features.h>. (__fxstatat) [__NR_newfstatat]: Make code unconditional. (__fxstatat) [!__ASSUME_ATFCTS]: Remove conditional code. * sysdeps/unix/sysv/linux/xmknodat.c: Do not include <kernel-features.h>. (__xmknodat) [__NR_mknodat]: Make code unconditional. (__xmknodat) [!__ASSUME_ATFCTS]: Remove conditional code.
2014-06-13Consolidate sparc clone, fork, and vfork implementations.David S. Miller
* nptl/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S: Delete. * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pt-vfork.S: Delete. * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: Moved ... * sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: ... here. * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Delete. * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/pt-vfork.S: Delete. * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Moved ... * sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: ... here. * sysdeps/unix/sysv/linux/sparc/fork.S: Delete. * sysdeps/unix/sysv/linux/sparc/pt-vfork.S: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start): Remove RESET_PID cpp guards. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start): Remove RESET_PID cpp guards. * sysdeps/unix/sysv/linux/sparc/vfork.S: Delete.
2014-01-01Update copyright notices with scripts/update-copyrightsAllan McRae
2013-11-26Use __glibc_reserved instead __unused.Ondřej Bílka
2013-06-15New API to set default thread attributesSiddhesh Poyarekar
This patch introduces two new convenience functions to set the default thread attributes used for creating threads. This allows a programmer to set the default thread attributes just once in a process and then run pthread_create without additional attributes.
2013-06-05Remove trailing whitespace.Joseph Myers
2013-04-02New <math.h> macro named issignaling to check for a signaling NaN (sNaN).Thomas Schwinge
It is based on draft TS 18661 and currently enabled as a GNU extension.
2013-02-18C++11 thread_local destructors supportSiddhesh Poyarekar
This feature is specifically for the C++ compiler to offload calling thread_local object destructors on thread program exit, to glibc. This is to overcome the possible complication of destructors of thread_local objects getting called after the DSO in which they're defined is unloaded by the dynamic linker. The DSO is marked as 'unloadable' if it has a constructed thread_local object and marked as 'unloadable' again when all the constructed thread_local objects defined in it are destroyed.
2013-02-13Remove __ptrvalue, __bounded and __unbounded.Joseph Myers
2013-02-08Remove CHECK_N and bp-checks.h.Joseph Myers
2013-02-08Remove CHECK_1 and CHECK_1_NULL_OK.Joseph Myers
2013-01-31Remove CHECK_SIGSET and CHECK_SIGSET_NULL_OK.Joseph Myers
2013-01-31Remove bp-semctl.h and CHECK_SEMCTL.Joseph Myers
2013-01-02Update copyright notices with scripts/update-copyrights.Joseph Myers
2012-11-11Fix check-localplt regressions on sparc.David S. Miller
* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c: Include inttypes.h (__get_clockfreq_via_proc_openprom): Use __open, __read, and __close rather than their public counterparts.
2012-11-07Fix NULL ucontext->uc_link handling on sparc64.David S. Miller
* sysdeps/unix/sysv/linux/sparc/sparc64/__start_context.S: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c (__start_context): Declare. (__makecontext_ret): Delete. (__makecontext): Hook up __start_context instead of __makecontext_ret. * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep_routines): Add __start_context when in stdlib.
2012-10-25Fix sparc64 build.David S. Miller
* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c (__get_clockfreq_via_proc_openprom): Use strtoumax instead of strtoull.
2012-10-25Use __getdents instead of __getdirentries in sparc ↵Roland McGrath
__get_clockfreq_via_proc_openprom.
2012-10-24BZ#14743: Move clock_* symbols from librt to libc.Roland McGrath
2012-08-27Remove __ASSUME_STAT64_SYSCALL.Joseph Myers
2012-08-17Adjust old #include's of sysdeps/unix/time.c to point to ↵Roland McGrath
sysdeps/posix/time.c instead.
2012-07-25Rename __secure_getenv to secure_getenvFlorian Weimer
2012-07-20Move localplt baselines to sysdeps directories.Joseph Myers
2012-07-17Move c++-types baselines to sysdeps directories.Joseph Myers
2012-06-01Add default-abi definitions for powerpc, s390 and sparc.Joseph Myers
2012-05-27Fix underflow reporting and tie up loose ends in sparc soft-fp.David S. Miller
* sysdeps/sparc/sparc32/soft-fp/q_util.c (___Q_numbers): Delete. (___Q_zero): New. (__Q_simulate_exceptions): Return void. Change to simulate exceptions by writing into the %fsr. * sysdeps/sparc/sparc64/soft-fp/qp_util.c (__Qp_handle_exceptions): Likewise. (numbers): Delete. * sysdeps/sparc/sparc64/soft-fp/Versions: Remove entry for __Qp_handle_exceptions. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libc.abilist: Remove __Qp_handle_exceptions. * sysdeps/sparc/sparc32/soft-fp/sfp-machine.h (_FP_DECL_EX): Mark as unused and give dummy FP_RND_NEAREST initializer. (FP_INHIBIT_RESULTS): Define. (___Q_simulate_exceptions): Update declaration. (FP_HANDLE_EXCEPTIONS): Use ___Q_zero and tidy inline asm formatting. * sysdeps/sparc/sparc64/soft-fp/sfp-machine.h (_FP_DECL_EX): Mark as unused and give dummy FP_RND_NEAREST initializer. (__Qp_handle_exceptions): Update declaration. (FP_HANDLE_EXCEPTIONS, QP_NO_EXCEPTIONS): Tidy inline asm formatting.
2012-05-20Add <sys/auxv.h> and getauxval.Richard Henderson
2012-04-28Move abilist files into sysdep dirs.David S. Miller
* Makerules (%.abilist): Add vpath on sysdep_dirs. (check-abi-%): Remove AWK script prerequisite and explicit abilist directory. (check-abi): Rewrite to just diff the symlist with the abilist. (config-tls, config-abi-config): Delete, no longer used. (update-abi-%): Remove AWK script and explicit abilist directory. (update-abi): Rewrite to simply compare and conditionally copy the symlist and the sysdep abilist file. Remove update-abi-config checks. * abilist/ld.abilist: Remove. * abilist/libBrokenLocale.abilist: Remove. * abilist/libanl.abilist: Remove. * abilist/libcrypt.abilist: Remove. * abilist/libdl.abilist: Remove. * abilist/librt.abilist: Remove. * abilist/libthread_db.abilist: Remove. * abilist/libutil.abilist: Remove. * scripts/extract-abilist.awk: Remove. * scripts/merge-abilist.awk: Remove. * sysdeps/generic/libcidn.abilist: New file. * sysdeps/generic/libnss_compat.abilist: New file. * sysdeps/generic/libnss_db.abilist: New file. * sysdeps/generic/libnss_dns.abilist: New file. * sysdeps/generic/libnss_files.abilist: New file. * sysdeps/generic/libnss_hesiod.abilist: New file. * sysdeps/generic/libnss_nis.abilist: New file. * sysdeps/generic/libnss_nisplus.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/ld.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libanl.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libBrokenLocale.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libc.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libcrypt.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libdl.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libm.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libnsl.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libpthread.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libresolv.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/librt.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libthread_db.abilist: New file. * sysdeps/unix/sysv/linux/i386/nptl/libutil.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/ld.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libanl.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libBrokenLocale.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libc.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libcrypt.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libdl.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libm.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libnsl.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libpthread.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libresolv.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/librt.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libthread_db.abilist: New file. * sysdeps/unix/sysv/linux/x86_64/nptl/libutil.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/ld.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libanl.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libBrokenLocale.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libc.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libcrypt.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libdl.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libm.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libnsl.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libpthread.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libresolv.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/librt.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libthread_db.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powercp32/fpu/nptl/libutil.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/ld.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libanl.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libBrokenLocale.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libcrypt.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libdl.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libm.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libnsl.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libpthread.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libresolv.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/librt.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libthread_db.abilist: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libutil.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/ld.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libanl.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libBrokenLocale.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libcrypt.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libdl.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libm.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libnsl.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libpthread.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libresolv.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/librt.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libthread_db.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libutil.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/ld.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libanl.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libBrokenLocale.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libcrypt.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libdl.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libm.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libnsl.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libpthread.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libresolv.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/librt.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libthread_db.abilist: New file. * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libutil.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/ld.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libanl.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libBrokenLocale.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libc.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libcrypt.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libdl.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libm.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libnsl.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libpthread.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libresolv.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/librt.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libthread_db.abilist: New file. * sysdeps/unix/sysv/linux/sh/nptl/libutil.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/ld.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libanl.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libBrokenLocale.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libc.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libcrypt.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libdl.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libm.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libnsl.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libpthread.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libresolv.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/librt.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libthread_db.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libutil.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/ld.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libanl.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libBrokenLocale.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libc.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libcrypt.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libdl.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libm.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libnsl.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libpthread.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libresolv.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/librt.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libthread_db.abilist: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libutil.abilist: New file.
2012-04-25Delete everything under sysdeps/unix/sparc/David S. Miller
* sysdeps/unix/sparc/brk.S: Delete. * sysdeps/unix/sparc/dl-brk.S: Delete. * sysdeps/unix/sparc/pipe.S: Delete. * sysdeps/unix/sparc/sysdep.S: Delete. * sysdeps/unix/sparc/sysdep.h: Delete. * sysdeps/unix/sparc/vfork.S: Delete. * sysdeps/sparc/sysdep.h (SPARC_PIC_THUNK, SPARC_PIC_REG, SPARC_PIC_REG_LEAF, ENTRY, END, LOC): Define. * sysdeps/unix/sysv/linux/sparc/sysdep.h (ret, ret_NOERRNO, ret_ERRVAL, r0, r1, MOVE): Define. (JUMPTARGET): Remove. * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Don't include sysdeps/unix/sparc/sysdep.h (ENTRY, END): Remove. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
2012-04-13Fix variable check in sparc clock frequency probing.Antoine Balestrat
* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c (__get_clockfreq_via_proc_openprom): Fix test on wrong variable.
2012-03-20Move stdio-common/_itoa.h to sysdeps/genericH.J. Lu
2012-03-13Use correct implementation for dl-fxstatat64 on sparc64.David S. Miller
* sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c: New file.
2012-03-11Fix some 64-bit sparc build warnings.David S. Miller
* 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-08Update copyright year after my most recent changes.David S. Miller
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-06Fix several build warnings on sparc.David S. Miller
/ * 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-01Remove sparc binutils GOTDATA checks in lieu of new minimum version requirement.David S. Miller
* 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-02-20Use sparc GOTDATA relocations whenever possible.David S. Miller
* 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-18Rework sparc PIC macros so crt{i,n}.S can use them too.David S. Miller
* 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-09Replace FSF snail mail address with URLs.Paul Eggert
2012-01-07Remove pre-ISO C supportUlrich Drepper
No more __const.
2012-01-07More ia64 removal changesUlrich Drepper
2011-09-10Remove support for !USE___THREADUlrich Drepper
2011-08-31Fix sparc localplt testcase failures.carlos/masterDavid S. Miller
2011-08-22Bug fixes for ____longjmp_chk on sparc.David S. Miller
2011-01-04sparc64: Use i386 implementation for fxstat.David S. Miller
This was simply missed when Jakub converted all of the other sparc64 xstat cases.
2010-03-03sparc64: Fix msgrcv()Aurelien Jarno
msgrcv() does not work on sparc64, as it passes the 6th argument using the ipc kludge, while the kernel waits for a 6 arguments syscall. This patches fixes the problem by using a sparc64 specific version of msgrcv.c. 2010-03-03 Aurelien Jarno <aurelien@aurel32.net> * sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c: New file.
2009-10-14Add ____longjmp_chk for sparcDavid S. Miller
tst-longjmp_chk passes, tst-longjmp_chk2 fails but that is because of some limitations of kernel signal delivery on sparc that I need to fix, it has nothing to do with the longjmp_chk implementation. (The problem with tst-longjmp_chk2 is that it tries to do a stack fault SIGSEGV within a stack fault SIGSEGV , and the Linux kernel will refuse to setup the signal stack and deliver the signal if the register windows can't be written out to the stack first)