Commit Graph

3480 Commits

Author SHA1 Message Date
Andreas Jaeger
e9eb4f5779 Protect against multiple inclusion. 2005-03-28 09:32:27 +00:00
Andreas Jaeger
305fae3b19 (elf_machine_rel): Add TLS relocations. 2005-03-28 09:32:04 +00:00
Andreas Jaeger
2568b67466 MIPS NPTL support 2005-03-28 09:21:52 +00:00
Andreas Jaeger
e36da2da8f Add MIPS NPTL support 2005-03-28 09:19:38 +00:00
Andreas Jaeger
27aae96e5b (SIGEV_THREAD, SIGEV_CALLBACK, SIGEV_THREAD_ID): Update to match the kernel. 2005-03-28 09:17:43 +00:00
Andreas Jaeger
e1ae85a58e (INTERNAL_SYSCALL_NCS): New.
(INTERNAL_SYSCALL, internal_syscall0, internal_syscall1,
	internal_syscall2, internal_syscall3, internal_syscall4,
	internal_syscall5, internal_syscall6, internal_syscall7): Update
	for non-constant support.
2005-03-28 09:17:26 +00:00
Andreas Jaeger
08650996ea Add NPTL and five-argument clone support. 2005-03-28 09:17:06 +00:00
Andreas Jaeger
4abf7dea27 Linux/MIPS vfork implementation. 2005-03-28 09:16:12 +00:00
Andreas Jaeger
638418213e New file. 2005-03-28 09:15:45 +00:00
Andreas Jaeger
0af5154802 New files for MIPS TLS support. 2005-03-28 09:14:59 +00:00
Andreas Jaeger
32e5182ae0 Remove unused file. 2005-03-28 08:59:05 +00:00
Andreas Jaeger
7dda24b203 Remove whitespace at eol 2005-03-28 07:58:05 +00:00
Andreas Jaeger
54316090f1 (internal_syscall5): Use register operands instead of non-lvalue
memory operands.
	(internal_syscall6): Likewise.
	(internal_syscall7): Likewise.
2005-03-28 07:48:26 +00:00
Andreas Jaeger
bd9fad095a (elf_machine_runtime_link_map, ELF_DL_FRAME_SIZE,
ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS,
	ELF_MACHINE_RUNTIME_TRAMPOLINE): Move to dl-trampoline.c.
	(RTLD_START): Align the stack before calling _dl_init_internal.
	Use .ent for _dl_start_user.
	(ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): Define.
	(elf_machine_rel, elf_machine_rel_relative, elf_machine_lazy_rel)
	(elf_machine_runtime_setup): Use "auto inline".
	(elf_machine_rela, elf_machine_rela_relative): Provide empty versions.
	(elf_machine_got_rel): Likewise.  Use RESOLVE_MAP.
2005-03-28 07:47:27 +00:00
Andreas Jaeger
43dbf87f20 MIPS specific dl-trampoline.c. 2005-03-28 07:44:17 +00:00
Andreas Jaeger
f5e233c54e MIPS specific <bits/link.h> 2005-03-28 07:43:51 +00:00
Ulrich Drepper
8646243632 Add __USE_MISC and __USE_XOPEN guards to match linux/bits/termios.h.
(CMSPAR): Define.
2005-03-20 04:30:28 +00:00
Roland McGrath
5b25b6ab54 Finish remove not committed properly 2005-03-17 00:32:10 +00:00
Roland McGrath
dda081dd50 2005-03-15 Jakub Jelinek <jakub@redhat.com>
* elf/dynamic-link.h (elf_machine_rel, elf_machine_rel_relative,
	elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel):
	Add inline keyword.
	* sysdeps/alpha/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative, elf_machine_lazy_rel): Add always_inline
	attribute.
	* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative, elf_machine_lazy_rel): Likewise.  Change
	static inline into auto inline.
	* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
	elf_machine_rela_relative, elf_machine_lazy_rel): Likewise.
	* sysdeps/generic/dl-machine.h (elf_machine_rel, elf_machine_rela):
	Likewise.
	* sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rel_relative,
	elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel):
	Likewise.
2005-03-15 22:57:26 +00:00
Roland McGrath
2d48195c9f 2005-03-10 GOTO Masanori <gotom@debian.or.jp>
* sysdeps/hppa/configure.in: Remove old Makefile leftovers.
	* sysdeps/hppa/configure: Regenerated.
2005-03-13 03:27:22 +00:00
Ulrich Drepper
816c550ea5 (ELF_MACHINE_NO_RELA): Define unconditionally to defined RTLD_BOOTSTRAP. 2005-03-06 00:07:58 +00:00
Roland McGrath
c5cb341b72 2005-03-01 Roland McGrath <roland@redhat.com>
[BZ #721]
	* sysdeps/arm/dl-machine.h (ELF_MACHINE_NO_RELA): Define this outside
	of [RESOLVE_MAP].
2005-03-01 20:34:40 +00:00
Andreas Jaeger
68f3ec5671 2004-11-11 Richard Sandiford <rsandifo@redhat.com>
[BZ #758]
	* sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h): Only
	preprocess <asm/unistd.h> if it defines ABI-prefixed syscall names
	like __NR_N32_open.  Just include <asm/unistd.h> otherwise.
	* sysdeps/unix/sysv/linux/mips/configure: Regenerate.
	* sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: Delete
	* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h (SYS_ify): Use the
	standard __NR prefix.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h (SYS_ify): Likewise.
	* sysdeps/unix/sysv/linux/mips/Makefile (syscall-%.h): Rework so that
	the output file is compatible with both pre-2.6 and 2.6 kernel headers.
	Extract separate syscall lists for each ABI.
2005-02-25 15:18:13 +00:00
Roland McGrath
890e858b8c 2005-02-14 GOTO Masanori <gotom@debian.or.jp>
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove the duplicated
	getpeername entry.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
2005-02-15 00:12:18 +00:00
Andreas Schwab
8cab192c3e (elf_machine_rela): Remove use of
RESOLVE.
2005-02-08 20:02:24 +00:00
Richard Henderson
a795af472d * math/math_private.h (__copysign): Define as builtin for gcc 4.
(__copysignf, __copysignl): Likewise.
        * sysdeps/alpha/fpu/bits/mathinline.h (copysign): Don't define
        for gcc 4.0.
        (copysignf, copysignl, fabsf, fabs): Likewise.
        (__copysign, __copysignf, __copysignl): Remove.
        (__fabs, __fabsf): Remove.
2005-02-08 04:37:48 +00:00
Richard Henderson
2aa0a6fafe * sysdeps/alpha/dl-machine.h (elf_machine_rela): Use RESOLVE_MAP
all the time.
2005-02-07 03:11:46 +00:00
Ulrich Drepper
9259ad13c3 (__old_globfree): Also copy gl_offs. 2005-01-27 20:52:04 +00:00
Richard Henderson
1ba6212c8b * sysdeps/alpha/dl-trampoline.S: New file.
* sysdeps/alpha/dl-machine.h: Move PLT trampolines there.
        Use RESOLVE_MAP instead of RESOLVE to protect relocation code.
        (elf_machine_runtime_setup): Test for dl_profile non-null.
        (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): New.
        * sysdeps/alpha/bits/link.h: New file.
        * sysdeps/generic/ldsodefs.h (La_alpha_regs, La_alpha_retval): New.
        (struct audit_ifaces): Add alpha entries.
        * elf/tst-auditmod1.c: Add alpha entries.
2005-01-23 08:02:38 +00:00
Andreas Schwab
00f36bfbb7 * sysdeps/m68k/dl-machine.h: Remove trampoline code. Define
ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
	(elf_machine_runtime_setup): If profile != 0 does not anymore mean
	GLRO(dl_profile) != NULL.
	* sysdeps/m68k/dl-trampoline.S: New file.
	* sysdeps/m68k/bits/link.h: New file.
	* sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add m68k
	variants.
	* elf/tst-auditmod1.c: Add m68k support.
2005-01-16 02:07:29 +00:00
Ulrich Drepper
cac7d7f9a1 (__tls_get_addr): Updated for dtv_t union. 2005-01-12 02:41:50 +00:00
Ulrich Drepper
e9c3f06f28 * csu/elf-init.c (__libc_csu_fini): Don't do anything here.
* sysdeps/generic/libc-start.c: Don't register program destructor here.

	* dlfcn/Makefile: Add rules to build dlfcn.c.
	(LDFLAGS-dl.so): Removed.
	* dlfcn/dlclose.c: _dl_close is now in ld.so, use function pointer
	table.
	* dlfcn/dlmopen.c: Likewise for _dl_open.
	* dlfcn/dlopen.c: Likewise.
	* dlfcn/dlopenold.c: Likewise.
	* elf/dl-libc.c: Likewise for _dl_open and _dl_close.
	* elf/Makefile (routines): Remove dl-open and dl-close.
	(dl-routines): Add dl-open, dl-close, and dl-trampoline.
	Add rules to build and run tst-audit1.
	* elf/tst-audit1.c: New file.
	* elf/tst-auditmod1.c: New file.
	* elf/Versions [libc]: Remove _dl_open and _dl_close.
	* elf/dl-close.c: Change for use inside ld.so instead of libc.so.
	* elf/dl-open.c: Likewise.
	* elf/dl-debug.c (_dl_debug_initialize): Allow reinitialization,
	signaled by nonzero parameter.
	* elf/dl-init.c: Fix use of r_state.
	* elf/dl-load.c: Likewise.

	* elf/dl-close.c: Add auditing checkpoints.
	* elf/dl-open.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
	* elf/dl-object.c: Allocate memory for auditing information.
	* elf/dl-reloc.c: Remove RESOLV.  We now always need the map.
	Correctly initialize slotinfo.
	* elf/dynamic-link.h: Adjust after removal of RESOLV.
	* sysdeps/hppa/dl-lookupcfg.h: Likewise.
	* sysdeps/ia64/dl-lookupcfg.h: Likewise.
	* sysdeps/powerpc/powerpc64/dl-lookupcfg.h: Removed.
	* elf/dl-runtime.c (_dl_fixup): Little cleanup.
	(_dl_profile_fixup): New parameters to point to register struct and
	variable for frame size.
	Add auditing checkpoints.
	(_dl_call_pltexit): New function.
	Don't define trampoline code here.
	* elf/rtld.c: Recognize LD_AUDIT.  Load modules on startup.
	Remove all the functions from _rtld_global_ro which only _dl_open
	and _dl_close needed.
	Add auditing checkpoints.
	* elf/link.h: Define symbols for auditing interfaces.
	* include/link.h: Likewise.
	* include/dlfcn.h: Define __RTLD_AUDIT.
	Remove prototypes for _dl_open and _dl_close.
	Adjust access to argc and argv in libdl.
	* dlfcn/dlfcn.c: New file.
	* sysdeps/generic/dl-lookupcfg.h: Remove all content now that RESOLVE
	is gone.
	* sysdeps/generic/ldsodefs.h: Add definitions for auditing interfaces.
	* sysdeps/generic/unsecvars.h: Add LD_AUDIT.
	* sysdeps/i386/dl-machine.h: Remove trampoline code here.
	Adjust for removal of RESOLVE.
	* sysdeps/x86_64/dl-machine.h: Likewise.
	* sysdeps/generic/dl-trampoline.c: New file.
	* sysdeps/i386/dl-trampoline.c: New file.
	* sysdeps/x86_64/dl-trampoline.c: New file.

	* sysdeps/generic/dl-tls.c: Cleanups.  Fixup for dtv_t change.
	Fix updating of DTV.
	* sysdeps/generic/libc-tls.c: Likewise.

	* sysdeps/arm/bits/link.h: Renamed to ...
	* sysdeps/arm/buts/linkmap.h: ...this.
	* sysdeps/generic/bits/link.h: Renamed to...
	* sysdeps/generic/bits/linkmap.h: ...this.
	* sysdeps/hppa/bits/link.h: Renamed to...
	* sysdeps/hppa/bits/linkmap.h: ...this.
	* sysdeps/hppa/i386/link.h: Renamed to...
	* sysdeps/hppa/i386/linkmap.h: ...this.
	* sysdeps/hppa/ia64/link.h: Renamed to...
	* sysdeps/hppa/ia64/linkmap.h: ...this.
	* sysdeps/hppa/s390/link.h: Renamed to...
	* sysdeps/hppa/s390/linkmap.h: ...this.
	* sysdeps/hppa/sh/link.h: Renamed to...
	* sysdeps/hppa/sh/linkmap.h: ...this.
	* sysdeps/hppa/x86_64/link.h: Renamed to...
	* sysdeps/hppa/x86_64/linkmap.h: ...this.
2005-01-06 22:40:24 +00:00
Andreas Jaeger
2cc89a4967 2004-12-20 Jakub Jelinek <jakub@redhat.com>,
Jim Gifford  <giffordj@linkline.com>

	[BZ #562]
	* sysdeps/mips/Makefile (librt-sysdep_routines): Add.
	* sysdeps/unix/mips/rt-sysdep.S: New file.
2004-12-20 08:34:03 +00:00
Richard Henderson
0141927118 * sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Add support
for NPTL where the PID is stored at userlevel and needs to be
        reset when CLONE_THREAD is not used.
nptl/
        * sysdeps/unix/sysv/linux/alpha/clone.S: New file.
        * sysdeps/alpha/tcb-offsets.sym (TID_OFFSET): New.
2004-12-17 10:11:44 +00:00
Andreas Jaeger
8779468479 Adjust for changed result. 2004-12-17 06:49:58 +00:00
Roland McGrath
5fbac7cf7e 2004-10-18 Maciej W. Rozycki <macro@mips.com>
* sysdeps/unix/sysv/linux/mips/bits/socket.h (__cmsg_nxthdr): Use
	__NTH instead of __THROW in the inline definition.
	* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
2004-12-15 01:00:56 +00:00
Roland McGrath
2863de95ab 2004-10-18 Maciej W. Rozycki <macro@mips.com>
* sysdeps/mips/bits/dlfcn.h (RTLD_DEEPBIND): New macro.
2004-12-15 01:00:51 +00:00
Roland McGrath
2b35938bce 2004-10-18 Maciej W. Rozycki <macro@mips.com>
* sysdeps/unix/sysv/linux/mips/bits/mman.h
	(PROT_GROWSDOWN, PROT_GROWSUP): New macros.
2004-12-15 01:00:48 +00:00
Roland McGrath
9db87dc9e2 2004-11-18 Daniel Jacobowitz <dan@codesourcery.com>
* sysdeps/unix/sysv/linux/arm/sysdep-cancel.h: Update RETINSTR use.
	* sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
2004-12-04 21:20:30 +00:00
Roland McGrath
47f0752a48 2004-11-18 Daniel Jacobowitz <dan@codesourcery.com>
* sysdeps/arm/sysdep.h: Define __USE_BX__ if bx is available.
	Use it instead of __THUMB_INTERWORK__.  Make RETINSTR take
	only a condition and a register.
	* sysdeps/arm/dl-machine.h: Use __USE_BX__ instead of
	__THUMB_INTERWORK__.
	(_dl_start_user): Use BX.
	* sysdeps/arm/strlen.S: Use DO_RET.
	* sysdeps/unix/arm/brk.S, sysdeps/unix/arm/fork.S,
	sysdeps/unix/arm/sysdep.S, sysdeps/unix/arm/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/arm/clone.S,
	sysdeps/unix/sysv/linux/arm/mmap.S,
	sysdeps/unix/sysv/linux/arm/mmap64.S,
	sysdeps/unix/sysv/linux/arm/socket.S,
	sysdeps/unix/sysv/linux/arm/sysdep.h,
	sysdeps/unix/sysv/linux/arm/vfork.S: Update uses of RETINSTR.
2004-12-04 21:20:17 +00:00
Ulrich Drepper
f0b94226b1 Include sgidefs.h only if NO_SGIDEFS_H isn't defined. Don't include
sgidefs.h twice.
2004-11-27 20:01:03 +00:00
Andreas Jaeger
232e0cb8d6 Regenerate. 2004-11-24 04:42:45 +00:00
Andreas Jaeger
ae9e3809f9 Use _ABIO32, _ABIN32 and _ABI64 for ABI selection in generated asm-unistd.h. 2004-11-24 04:38:31 +00:00
Andreas Jaeger
8de3c5f1fe Use _ABIO32, _ABIN32 and _ABI64 for ABI selection in generated syscall-list.h 2004-11-24 04:38:15 +00:00
Andreas Jaeger
9b7b62e64d Prevent <asm/sgidefs.h> from being
included by kernel headers and undo its settings if already
	included.  Define _ABIO32, _ABIN32 and _ABI64 if missing and use
	them to define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32 and
	_MIPS_SIM_ABI64 for compatibility.
2004-11-24 04:37:58 +00:00
Andreas Jaeger
73a227e200 Use _ABIO32, _ABIN32 and _ABI64 for ABI selection throughout. 2004-11-24 04:37:35 +00:00
Andreas Jaeger
b8ddf7a11f Include <sgidefs.h>. Use _ABIO32, _ABIN32 and _ABI64 for ABI selection
throughout.
2004-11-24 04:36:11 +00:00
Andreas Jaeger
56eb7d3add * sysdeps/unix/sysv/linux/mips/bits/siginfo.h (__SI_MAX_SIZE):
Define appropriately based on __WORDSIZE.
	[struct siginfo] (__pad0): Add for explicit padding.

	* sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Formatting fixes
	throughout.
2004-11-22 12:47:50 +00:00
Ulrich Drepper
8608e6698d (TRAMPOLINE_TEMPLATE): Add unwind annotations. 2004-11-19 00:01:25 +00:00
Ulrich Drepper
6deb629a54 Remove sys/syscall.h, sys/types.h, linux/posix_types.h, sysdep.h and
pthread-functions.h includes.  Include setxid.h.  Use
INLINE_SETXID_SYSCALL macro instead of INLINE_SYSCALL, kill the
HAVE_PTR__NPTL_SETXID guarded snippets.
2004-11-12 01:15:06 +00:00