Commit Graph

217 Commits

Author SHA1 Message Date
Siddhesh Poyarekar 61dd6208fb New API to set default thread attributes
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-15 12:24:15 +05:30
Joseph Myers 9c84384cc1 Remove trailing whitespace. 2013-06-05 20:44:03 +00:00
Thomas Schwinge 572676160d New <math.h> macro named issignaling to check for a signaling NaN (sNaN).
It is based on draft TS 18661 and currently enabled as a GNU extension.
2013-04-02 13:51:02 +02:00
Siddhesh Poyarekar ba384f6ed9 C++11 thread_local destructors support
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-18 19:08:21 +05:30
Joseph Myers 70d9946a44 Remove __ptrvalue, __bounded and __unbounded. 2013-02-13 23:30:40 +00:00
Joseph Myers a2da1673fe Remove CHECK_N and bp-checks.h. 2013-02-08 20:06:30 +00:00
Joseph Myers f3aae3f3eb Remove CHECK_1 and CHECK_1_NULL_OK. 2013-02-08 01:12:11 +00:00
Joseph Myers 32a45bea39 Remove CHECK_SIGSET and CHECK_SIGSET_NULL_OK. 2013-01-31 23:00:15 +00:00
Joseph Myers 2e8a5c8c46 Remove bp-semctl.h and CHECK_SEMCTL. 2013-01-31 22:59:04 +00:00
Joseph Myers 568035b787 Update copyright notices with scripts/update-copyrights. 2013-01-02 19:05:09 +00:00
David S. Miller 640ac3f1bf Fix check-localplt regressions on sparc.
* 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-11 15:46:01 -08:00
David S. Miller 60e8270d6c Fix NULL ucontext->uc_link handling on sparc64.
* 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-11-07 21:01:06 -08:00
David S. Miller e2211bed12 Fix sparc64 build.
* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c
	(__get_clockfreq_via_proc_openprom): Use strtoumax instead
	of strtoull.
2012-10-25 15:41:32 -07:00
Roland McGrath 1e9d84cdbc Use __getdents instead of __getdirentries in sparc __get_clockfreq_via_proc_openprom. 2012-10-25 14:49:28 -07:00
Roland McGrath 6e6249d0b4 BZ#14743: Move clock_* symbols from librt to libc. 2012-10-24 14:50:46 -07:00
Joseph Myers ad845c0be9 Remove __ASSUME_STAT64_SYSCALL. 2012-08-27 19:36:04 +00:00
Roland McGrath e3b398f925 Adjust old #include's of sysdeps/unix/time.c to point to sysdeps/posix/time.c instead. 2012-08-17 14:16:12 -07:00
Florian Weimer 84b3fd8407 Rename __secure_getenv to secure_getenv 2012-07-25 19:46:22 +02:00
Joseph Myers 0f48659e36 Move localplt baselines to sysdeps directories. 2012-07-20 19:20:34 +00:00
Joseph Myers bd29910a8a Move c++-types baselines to sysdeps directories. 2012-07-17 14:44:06 +00:00
Joseph Myers ea32bcdd3d Add default-abi definitions for powerpc, s390 and sparc. 2012-06-01 21:19:28 +00:00
David S. Miller d66ef399f5 Fix underflow reporting and tie up loose ends in sparc soft-fp.
* 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-27 21:11:42 -07:00
Richard Henderson c7683a6d02 Add <sys/auxv.h> and getauxval. 2012-05-20 10:40:35 -07:00
David S. Miller 8dbd5d7b90 Move abilist files into sysdep dirs.
* 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-28 04:36:51 -04:00
David S. Miller aab39a094e Delete everything under sysdeps/unix/sparc/
* 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-25 11:52:31 -07:00
Antoine Balestrat c7a6ab72e9 Fix variable check in sparc clock frequency probing.
* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c
	(__get_clockfreq_via_proc_openprom): Fix test on wrong variable.
2012-04-13 14:31:35 -07:00
H.J. Lu eb96ffb07d Move stdio-common/_itoa.h to sysdeps/generic 2012-03-20 16:00:23 -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 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 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
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 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 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 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
Paul Eggert 59ba27a63a Replace FSF snail mail address with URLs. 2012-02-09 23:18:22 +00:00
Ulrich Drepper a784e50247 Remove pre-ISO C support
No more __const.
2012-01-07 23:57:22 -05:00
Ulrich Drepper f03fe7f932 More ia64 removal changes 2012-01-07 11:39:33 -05:00
Ulrich Drepper d063d16433 Remove support for !USE___THREAD 2011-09-10 16:50:28 -04:00
David S. Miller 3ba575169a Fix sparc localplt testcase failures. 2011-08-31 17:30:41 -07:00
David S. Miller 25ad0df13b Bug fixes for ____longjmp_chk on sparc. 2011-08-22 16:53:57 -07:00
David S. Miller 16c2895fea sparc64: Use i386 implementation for fxstat.
This was simply missed when Jakub converted all of the
other sparc64 xstat cases.
2011-01-04 12:22:41 -08:00
Aurelien Jarno 321029f1c3 sparc64: Fix msgrcv()
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.
2010-03-03 02:14:03 -08:00
David S. Miller a0902db9fe Add ____longjmp_chk for sparc
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)
2009-10-14 14:57:16 +02:00
Roland McGrath 24fd0a5bec * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Renamed to ...
* sysdeps/unix/sysv/linux/powerpc/ipc_priv.h: ... here.

	* sysdeps/unix/sysv/linux/alpha/wordexp.c: Renamed to ...
	* sysdeps/unix/sysv/linux/ia64/wordexp.c: ... here.
	* sysdeps/unix/sysv/linux/sparc/sparc64/wordexp.c: Change #include.
2008-11-26 19:20:20 +00:00
Jakub Jelinek 86746abb84 * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Use
HIDDEN_JUMPTARGET. 
* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h 
(__SYSCALL_CLOBBERS): Remove %g* registers. 
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h 
(__SYSCALL_CLOBBERS): Likewise. 
* scripts/data/localplt-sparc-linux-gnu.data: New file. 
* scripts/data/localplt-sparc64-linux-gnu.data: Likewise.
2008-05-08  David S. Miller  <davem@davemloft.net>

	* sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Use
	HIDDEN_JUMPTARGET.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
	(__SYSCALL_CLOBBERS): Remove %g* registers.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
	(__SYSCALL_CLOBBERS): Likewise.
	* scripts/data/localplt-sparc-linux-gnu.data: New file.
	* scripts/data/localplt-sparc64-linux-gnu.data: Likewise.
2008-05-21 09:29:07 +00:00
Jakub Jelinek 5e6f34c2a0 * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
(CALL_ERRNO_LOCATION): Define. 
(__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it. 
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h 
(CALL_ERRNO_LOCATION): Define. 
(__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it. 
* sysdeps/unix/sysv/linux/sparc/sparc64/brk.S (__brk): Use 
HIDDEN_JUMPTARGET for __errno_location call in libc.so.
2008-05-21  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
	(CALL_ERRNO_LOCATION): Define.
	(__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
	(CALL_ERRNO_LOCATION): Define.
	(__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it.
	* sysdeps/unix/sysv/linux/sparc/sparc64/brk.S (__brk): Use
	HIDDEN_JUMPTARGET for __errno_location call in libc.so.
2008-05-21 08:48:21 +00:00
Jakub Jelinek 4ce349e559 * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S: Add support for
six system call parameters. 
* sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: Likewise.
2008-05-01  David S. Miller  <davem@davemloft.net>

	* sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S: Add support for
	six system call parameters.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: Likewise.
2008-05-05 09:17:00 +00:00
Jakub Jelinek d4e92d9e08 * sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c (semctl):
Pass "union semun" properly in to sys_ipc, it must be passed 
by value, not by reference.
2008-04-25  David S. Miller  <davem@davemloft.net>

	* sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c (semctl):
	Pass "union semun" properly in to sys_ipc, it must be passed
	by value, not by reference.
2008-04-29 17:07:03 +00:00
Jakub Jelinek 006805680f * sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup.
* sysdeps/sparc/sparc64/elf/start.S: Likewise. 
* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start): Likewise. 
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start): Likewise.
	* sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup.
	* sysdeps/sparc/sparc64/elf/start.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start): Likewise.
2007-09-18 19:29:44 +00:00
Jakub Jelinek 91ddd9c448 * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
If the syscall fails, set errno to the actual returned error number 
rather than EINVAL. 
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If 
arguments are incorrect, set errno to EINVAL, if the syscall 
fails, set errno to the actual returned error number.
	* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
	If the syscall fails, set errno to the actual returned error number
	rather than EINVAL.
	* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
	arguments are incorrect, set errno to EINVAL, if the syscall
	fails, set errno to the actual returned error number.
2007-08-16 19:44:26 +00:00