Ulrich Drepper [Tue, 1 Jul 2003 20:20:19 +0000 (20:20 +0000)]
Public semaphore type definitions for Alpha.
Ulrich Drepper [Tue, 1 Jul 2003 20:20:04 +0000 (20:20 +0000)]
Public type definitions for nptl on Alpha.
Ulrich Drepper [Tue, 1 Jul 2003 20:19:46 +0000 (20:19 +0000)]
Makefile for nptl on Alpha.
Ulrich Drepper [Tue, 1 Jul 2003 19:25:45 +0000 (19:25 +0000)]
TLS access definitions for Alpha.
Ulrich Drepper [Tue, 1 Jul 2003 19:25:32 +0000 (19:25 +0000)]
libthread_db interface to map LWP ID to thread for Alpha.
Ulrich Drepper [Tue, 1 Jul 2003 19:25:02 +0000 (19:25 +0000)]
General definition for libpthread on Alpha.
Ulrich Drepper [Tue, 1 Jul 2003 19:24:47 +0000 (19:24 +0000)]
Spinlock trylock implementation for Alpha.
Ulrich Drepper [Tue, 1 Jul 2003 19:24:33 +0000 (19:24 +0000)]
Spinlock implementation for Alpha.
Ulrich Drepper [Tue, 1 Jul 2003 19:23:36 +0000 (19:23 +0000)]
Initialization code for libpthread on Alpha.
Richard Henderson [Mon, 30 Jun 2003 23:21:49 +0000 (23:21 +0000)]
* sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly.
Richard Henderson [Mon, 30 Jun 2003 23:21:38 +0000 (23:21 +0000)]
* sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int):
Invert the sense of the return value.
(__arch_exchange_16_int): Fix paste-o.
(__arch_exchange_{32,64}_int): Fix think-o.
Andreas Jaeger [Mon, 30 Jun 2003 09:33:13 +0000 (09:33 +0000)]
2003-06-17 Guido Guenther <agx@sigxcpu.org>
* sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT
case.
(xstat_conv): Rename to __xstat_conv and remove static inline.
(xstat64_conv): Likewise.
Roland McGrath [Fri, 27 Jun 2003 20:58:22 +0000 (20:58 +0000)]
2003-06-27 Jeroen Dekkers <jeroen@dekkers.cx>
* sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init.
* sysdeps/mach/hurd/i386/init-first.c: Likewise.
* sysdeps/mach/hurd/mips/init-first.c: Likewise.
* sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
Ulrich Drepper [Thu, 26 Jun 2003 17:00:37 +0000 (17:00 +0000)]
Define _STATBUF_ST_NSEC.
Andreas Schwab [Thu, 26 Jun 2003 16:18:13 +0000 (16:18 +0000)]
* sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp.
* sysdeps/m68k/fpu/s_frexp.c: Put implementation here.
* sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers.
Ulrich Drepper [Wed, 25 Jun 2003 08:18:08 +0000 (08:18 +0000)]
(INLINE_SYSCALL): Cast result to long int.
Ulrich Drepper [Wed, 25 Jun 2003 08:03:24 +0000 (08:03 +0000)]
ld.so cache deifnitions for mips.
Ulrich Drepper [Tue, 24 Jun 2003 17:13:44 +0000 (17:13 +0000)]
(struct statfs): Add f_frsize field.
(struct statfs64): Likewise.
Richard Henderson [Tue, 24 Jun 2003 17:03:59 +0000 (17:03 +0000)]
* sysdeps/alpha/bits/atomic.h: New file.
Richard Henderson [Tue, 24 Jun 2003 16:38:45 +0000 (16:38 +0000)]
* sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET.
* sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use
libc_hidden_def.
* sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto
on them.
Richard Henderson [Tue, 24 Jun 2003 16:33:49 +0000 (16:33 +0000)]
* sysdeps/alpha/fpu/bits/mathinline.h: Honor
__LIBC_INTERNAL_MATH_INLINES. Implement __signbitf, __signbit.
Richard Henderson [Tue, 24 Jun 2003 16:29:21 +0000 (16:29 +0000)]
* sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue.
Richard Henderson [Tue, 24 Jun 2003 16:26:34 +0000 (16:26 +0000)]
* sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use
the 64-bit syscall name.
Andreas Schwab [Tue, 24 Jun 2003 11:06:57 +0000 (11:06 +0000)]
Update.
Richard Henderson [Fri, 20 Jun 2003 19:24:17 +0000 (19:24 +0000)]
* sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
* sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.
Richard Henderson [Fri, 20 Jun 2003 16:24:36 +0000 (16:24 +0000)]
* sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect.
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT)
Unset for alpha.
(__ASSUME_TIMEVAL64): Set for alpha.
* sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
adjtimex, osf_sigprocmask, old_adjtimex.
* sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL,
__ASSUME_TIMEVAL64. Reorg tv64 functions to avoid uninit variable.
* sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64.
* sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline
PIC code sequence.
* sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/sigaction.c: New file.
* sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL.
* sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise.
* sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask,
sys_ustat, sys_mknod, adjtimex, old_adjtimex.
* sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't
defer to __syscall_name; error for rt_sigaction.
* sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h.
Andreas Jaeger [Sun, 15 Jun 2003 14:41:02 +0000 (14:41 +0000)]
2003-06-15 Guido Guenther <agx@sigxcpu.org>
* sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and
create $(objpfx).
Ulrich Drepper [Thu, 12 Jun 2003 16:18:11 +0000 (16:18 +0000)]
Fix handling of syscalls with more than four parameters.
Ulrich Drepper [Wed, 11 Jun 2003 22:37:05 +0000 (22:37 +0000)]
Don't inline the function. Export them. Prepend __ to name.
Ulrich Drepper [Fri, 6 Jun 2003 17:31:40 +0000 (17:31 +0000)]
New sequences for 5+ arg syscalls only needed for PIC.
Richard Henderson [Fri, 6 Jun 2003 05:54:15 +0000 (05:54 +0000)]
* sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace.
* sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
* sysdeps/alpha/elf/start.S: Likewise. Remove pointless allocation.
* sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp
entry sequence and explicit relocs. Add unwind info for sigreturn
and rt_sigreturn.
* configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state.
* configure: Regenerate.
Richard Henderson [Fri, 6 Jun 2003 05:52:52 +0000 (05:52 +0000)]
* sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New.
Annotate some parameters.
* sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New.
Richard Henderson [Fri, 6 Jun 2003 05:51:53 +0000 (05:51 +0000)]
* sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion.
Andreas Jaeger [Fri, 30 May 2003 17:41:46 +0000 (17:41 +0000)]
2003-05-30 Guido Guenther <agx@sigxcpu.org>
* sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
SETUP_GP64 and friends.
* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
names in internal_syscall{6,7}.
* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
number of syscall arguments.
* sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
* sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
* sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
Roland McGrath [Wed, 28 May 2003 21:05:12 +0000 (21:05 +0000)]
2003-05-11 Andreas Schwab <schwab@suse.de>
* Makerules: Always use -MP together with -MD.
(sed-remove-dotot): Substitute $(..) also at start of line.
($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
Generated defines with a single compiler call.
Use $(sed-remove-dotdot).
* mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
* sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
* sysdeps/unix/sysv/linux/mips/Makefile
($(objpfx)syscall-%.h): Likewise.
Andreas Jaeger [Thu, 22 May 2003 02:26:29 +0000 (02:26 +0000)]
2003-05-20 Guido Guenther <agx@sigxcpu.org>
* sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL
to -60 and define SI_TKILL.
Ulrich Drepper [Sat, 10 May 2003 05:29:30 +0000 (05:29 +0000)]
(atomic_exchange_acq): Renamed from atomic_exchange.
Ulrich Drepper [Fri, 2 May 2003 23:24:56 +0000 (23:24 +0000)]
(IPCOP_semtimedop): Define.
Alexandre Oliva [Wed, 30 Apr 2003 23:22:09 +0000 (23:22 +0000)]
* sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
uc_flags long for all ABIs.
Ulrich Drepper [Tue, 29 Apr 2003 22:47:20 +0000 (22:47 +0000)]
Add libc_hidden_builtin_def.
Andreas Schwab [Sun, 27 Apr 2003 17:08:00 +0000 (17:08 +0000)]
semtimedop implementation for Linux/m68k.
Ulrich Drepper [Mon, 21 Apr 2003 07:27:10 +0000 (07:27 +0000)]
Define SI_TKILL.
Ulrich Drepper [Sat, 19 Apr 2003 18:31:57 +0000 (18:31 +0000)]
Sync with Linux 2.5.67.
Alexandre Oliva [Sun, 13 Apr 2003 11:36:32 +0000 (11:36 +0000)]
* sysdeps/unix/sysv/linux/mips/profil-counter: New.
* sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
* sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
* sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
(mcontext_t): Make it match the 32-bit mips kernel in o32.
* sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
the mips and mips64 headers.
(struct user): Port to n32/n64.
Ulrich Drepper [Sat, 12 Apr 2003 00:51:50 +0000 (00:51 +0000)]
Allow file to be included multiple times.
Ulrich Drepper [Wed, 9 Apr 2003 07:39:17 +0000 (07:39 +0000)]
Remove FLT_EVAL_METHOD definition.
Alexandre Oliva [Wed, 9 Apr 2003 02:51:04 +0000 (02:51 +0000)]
* sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
NewABI.
(ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
NewABI.
* sysdeps/mips/mips64/memcpy.S: Adjust register naming
conventions.
* sysdeps/mips/mips64/memset.S: Likewise.
* sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
Use t0 instead of t4 as temporary.
Alexandre Oliva [Sat, 5 Apr 2003 19:57:35 +0000 (19:57 +0000)]
* sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
* sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
* sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
on mips n32.
* sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
XSTAT_IS_XSTAT64 must not be used for mips n64. Use 64-bit data
structure on n32 as well.
* sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
data types on n32 and n64.
Alexandre Oliva [Fri, 4 Apr 2003 05:12:00 +0000 (05:12 +0000)]
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
for n64 abi.
Ulrich Drepper [Thu, 3 Apr 2003 19:32:34 +0000 (19:32 +0000)]
(PSEUDO): Add missing ; after ENTRY use.
Ulrich Drepper [Tue, 1 Apr 2003 06:16:53 +0000 (06:16 +0000)]
(_NSIG): Define to 65.
Andreas Schwab [Mon, 31 Mar 2003 16:01:09 +0000 (16:01 +0000)]
(atomic_increment_and_test): Define.
(atomic_decrement_and_test): Fix test.
Alexandre Oliva [Sat, 29 Mar 2003 08:15:29 +0000 (08:15 +0000)]
* configure.in: Add mips64* support.
* configure: Rebuilt.
* sysdeps/mips/bits/endian.h: Make it bi-endian.
* sysdeps/mips/mipsel/bits/endian.h: Removed.
* sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
* sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
* sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
* sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
* sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
* sysdeps/mips/Implies: Moved wordsize-32 to...
* sysdeps/mips/mips32/Implies: New file.
* sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
ret_NOERRNO): New.
(ret, PSEUDO_END): Moved past END.
(PSEUDO): Moved to...
* sysdeps/unix/mips/mips32/sysdep.h: New file.
* sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
* sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
* sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
Alexandre Oliva [Sat, 29 Mar 2003 08:01:57 +0000 (08:01 +0000)]
* sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
Re-introduce ENTRY.
Alexandre Oliva [Fri, 28 Mar 2003 07:02:35 +0000 (07:02 +0000)]
* sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
Alexandre Oliva [Fri, 28 Mar 2003 06:11:03 +0000 (06:11 +0000)]
* sysdeps/unix/sysv/linux/mips/configure: Rebuilt.
Roland McGrath [Thu, 27 Mar 2003 02:45:49 +0000 (02:45 +0000)]
2003-03-27 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
unconditional mov. Remove nop.
Roland McGrath [Thu, 27 Mar 2003 02:45:46 +0000 (02:45 +0000)]
2003-03-27 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
* sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
when __ASSUME_VFORK_SYSCALL is defined.
* sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
__ASSUME_MMAP2_SYSCALL.
* sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
__ASSUME_REALTIME_SIGNALS.
Ulrich Drepper [Wed, 26 Mar 2003 23:41:57 +0000 (23:41 +0000)]
(struct siginfo): Avoid no-op padding element.
Ulrich Drepper [Wed, 26 Mar 2003 04:48:10 +0000 (04:48 +0000)]
(struct siginfo): Adjust timer info for what the kernel provides these days.
(struct sigevent): Add _tid field.
Define SIGEV_THREAD_ID.
Remove struct __pthread_attr_s forward declaration.
Andreas Schwab [Tue, 25 Mar 2003 23:40:18 +0000 (23:40 +0000)]
Fix typos.
Andreas Schwab [Tue, 25 Mar 2003 23:15:40 +0000 (23:15 +0000)]
Define ret_NOERRNO.
Ulrich Drepper [Tue, 25 Mar 2003 21:59:17 +0000 (21:59 +0000)]
(__TIMER_T_TYPE): Define as void*.
Alexandre Oliva [Tue, 25 Mar 2003 21:51:53 +0000 (21:51 +0000)]
* sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
Define.
* sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
ISA tests.
(ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
(PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
to decide whether to add padding.
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
to decide whether to add padding.
* sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
old_kernel_sigaction): Likewise.
Roland McGrath [Tue, 25 Mar 2003 09:44:29 +0000 (09:44 +0000)]
2003-03-24 Daniel Jacobowitz <drow@mvista.com>
* sysdeps/unix/sysv/linux/arm/sysdep-cancel.h
(DOARGS_5, DOARGS_6, DOARGS_7): Rewritten.
Ulrich Drepper [Mon, 24 Mar 2003 19:00:28 +0000 (19:00 +0000)]
INTERNAL_SYSCALL): Remove a1 from clobber list.
Ulrich Drepper [Sun, 23 Mar 2003 19:42:23 +0000 (19:42 +0000)]
Define PSEUDO_NOERRNO, PSEUDO_END_NOERRNO, and ret_NOERRNO.
Roland McGrath [Sun, 23 Mar 2003 00:52:10 +0000 (00:52 +0000)]
2003-03-23 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/fpu/libm-test-ulps: Update.
* sysdeps/arm/libm-test-ulps: Update.
* sysdeps/hppa/fpu/libm-test-ulps: Update.
* sysdeps/ia64/fpu/libm-test-ulps: Update.
* sysdeps/mips/fpu/libm-test-ulps: Update.
* sysdeps/powerpc/nofpu/libm-test-ulps: Update.
* sysdeps/powerpc/fpu/libm-test-ulps: Update.
* sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
* sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
* sysdeps/s390/fpu/libm-test-ulps: Update.
* sysdeps/x86_64/fpu/libm-test-ulps: Update.
Andreas Schwab [Sat, 22 Mar 2003 21:17:47 +0000 (21:17 +0000)]
Update.
Andreas Schwab [Sat, 22 Mar 2003 21:00:48 +0000 (21:00 +0000)]
Superceded by atomic.h.
Andreas Schwab [Sat, 22 Mar 2003 20:59:49 +0000 (20:59 +0000)]
Atomic operations for m68020 and up.
Alexandre Oliva [Sat, 22 Mar 2003 15:07:05 +0000 (15:07 +0000)]
* sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
data structures and macros. Protect from multiple inclusion.
Alexandre Oliva [Sat, 22 Mar 2003 12:50:46 +0000 (12:50 +0000)]
* sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
typo in #if test.
Alexandre Oliva [Fri, 21 Mar 2003 21:39:39 +0000 (21:39 +0000)]
* sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
unaligned copying of 8-15 bytes. From Chris Demetriou
<cgd@broadcom.com>. Fix label names.
* sysdeps/mips/mips64/memset.S: Fix label names. Make similar
change as to memcpy.S.
* sysdeps/mips/memcpy.S: Formatting changes.
* sysdeps/mips/memset.S: Likewise.
Roland McGrath [Fri, 21 Mar 2003 20:51:59 +0000 (20:51 +0000)]
2003-03-21 Roland McGrath <roland@redhat.com>
* sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
Roland McGrath [Fri, 21 Mar 2003 20:49:58 +0000 (20:49 +0000)]
2003-03-21 Daniel Jacobowitz <drow@mvista.com>
* sysdeps/unix/sysv/linux/arm/sysdep-cancel.h
(SINGLE_THREAD_P_PIC): Use "reg" instead of "lr".
Alexandre Oliva [Fri, 21 Mar 2003 19:44:24 +0000 (19:44 +0000)]
* sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
* sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
Alexandre Oliva [Thu, 20 Mar 2003 22:29:44 +0000 (22:29 +0000)]
* sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
* sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
* sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
Alexandre Oliva [Thu, 20 Mar 2003 20:58:02 +0000 (20:58 +0000)]
* sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
into high and low halves on n64.
* sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
* sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
* sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
Alexandre Oliva [Thu, 20 Mar 2003 17:59:45 +0000 (17:59 +0000)]
* sysdeps/mips/ieee754.h: Remove excess #endif.
Alexandre Oliva [Thu, 20 Mar 2003 10:27:55 +0000 (10:27 +0000)]
* sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
including pc, gp, sp and fp, as long long.
* sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
* sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
Add gp argument, and set gp in the jmpbuf to it.
* sysdeps/mips/setjmp_aux.c: Revert to o32-only.
Alexandre Oliva [Thu, 20 Mar 2003 07:54:56 +0000 (07:54 +0000)]
* sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
with a single instruction.
Alexandre Oliva [Thu, 20 Mar 2003 07:54:21 +0000 (07:54 +0000)]
* sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
properly for n64.
(elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
type.
(elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
Word before comparing with gotsym. Take reloc_addr argument as
void*. Remove the code added for the compiler to drop any
alignment assumptions.
Alexandre Oliva [Thu, 20 Mar 2003 00:39:32 +0000 (00:39 +0000)]
* sysdeps/mips/ieee754.h: New file, suitable to replace both
../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
mips-specific for now.
Alexandre Oliva [Mon, 17 Mar 2003 16:20:44 +0000 (16:20 +0000)]
* sysdeps/mips/mips64/Implies: Move wordsize-64 to...
* sysdeps/mips/mips64/n64/Implies: New file.
* sysdeps/mips/mips64/n64/Makefile: New file.
* sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
* sysdeps/mips/mips64/n32/Implies: New file.
* sysdeps/mips/mips64/n32/Makefile: New file.
* sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
* sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
* sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
* sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
* sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
Alexandre Oliva [Mon, 17 Mar 2003 15:57:19 +0000 (15:57 +0000)]
* sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
lib64 for mips64/n64 and lib32 for mips64/n32.
(ldd_rewrite_script): Needed for all mips64 configurations.
* sysdeps/unix/sysv/linux/configure: Rebuilt.
* sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
* sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
Alexandre Oliva [Mon, 17 Mar 2003 15:53:37 +0000 (15:53 +0000)]
* sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
well.
Alexandre Oliva [Mon, 17 Mar 2003 15:50:05 +0000 (15:50 +0000)]
* sysdeps/unix/sysv/linux/mips/configure.in: New. Pre-process
asm/unistd.h into asm-unistd.h.
* sysdeps/unix/sysv/linux/mips/configure: Generated.
* sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
of syscall list.
* sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
* sysdeps/unix/sysv/linux/mips/clone.S: Don't include
asm/unistd.h.
Alexandre Oliva [Mon, 17 Mar 2003 15:48:52 +0000 (15:48 +0000)]
* sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
* sysdeps/unix/sysv/linux/mips/ptrace.c: New file. Use long
long type for registers on n32.
Alexandre Oliva [Mon, 17 Mar 2003 15:47:13 +0000 (15:47 +0000)]
* sysdeps/mips/bits/wordsize.h: New file, appropriate for all
3 ABIs.
* sysdeps/mips/mips64/gmp-mparam.h: New file. Define
BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
* sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
(__sigsetjmp_aux): Use them. Adjust for all 3 ABIs.
* sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
* sysdeps/unix/mips/brk.S: Likewise.
* sysdeps/unix/mips/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
* sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
* sysdeps/mips/sys/ucontext.h: Likewise.
* sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
* sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
* sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
* sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
* sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
* sysdeps/mips/mips64/setjmp.S: Likewise.
* sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
* sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
64-bit types.
Alexandre Oliva [Fri, 14 Mar 2003 15:30:43 +0000 (15:30 +0000)]
* sysdeps/mips/fpu/bits/mathdef.h: New.
(__NO_LONG_DOUBLE_MATH): Define for o32.
Alexandre Oliva [Fri, 14 Mar 2003 11:06:32 +0000 (11:06 +0000)]
* sysdeps/mips/sys/asm.h: Formatting changes.
(PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
(CPADD): Define for all of them.
(SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
NARGSAVE): Define per ABI spec.
(END): Don't redefine.
(LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
LONG_SRAV): Remove duplicate definitions.
(PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
(PTR_LA): Define for all 3 ABIs.
Alexandre Oliva [Fri, 14 Mar 2003 08:43:13 +0000 (08:43 +0000)]
* sysdeps/mips/dl-machine.h: Include sys/asm.h.
(elf_machine_matches_host): Prevent linking of o32 and n32
together.
(elf_machine_dynamic): Document assumption on $gp.
(STRINGXP, STRINGXV, STRINGV_): New macros.
(elf_machine_load_address): Use them to stringize PTR_LA and
PTR_SUBU.
(ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
(_dl_runtime_resolve): Adjust it for all 3 ABIs.
(__dl_runtime_resolve): Cast the symtab initializer to the
right type.
(RTLD_START): Use it. Adjust it for all 3 ABIs.
(elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
Handle 64-bit R_MIPS_REL composite relocation and accept
R_MIPS_64 relocations to shift addend size to 64 bits.
Document assumption regarding local GOT entries. Document
backward-compatibility departing from the ABI behavior in
applying relocations that reference section symbols, no longer
used. Support relocations to mis-aligned offsets.
* sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
Alexandre Oliva [Fri, 14 Mar 2003 07:52:05 +0000 (07:52 +0000)]
* sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
Alexandre Oliva [Fri, 14 Mar 2003 07:49:05 +0000 (07:49 +0000)]
* sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
(_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
* sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
restore_rt functions. Use them.
Alexandre Oliva [Fri, 14 Mar 2003 07:03:36 +0000 (07:03 +0000)]
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
.set mips2 on new abis.
Alexandre Oliva [Fri, 14 Mar 2003 05:31:28 +0000 (05:31 +0000)]
* sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
* sysdeps/mips/memset.S: Likewise.
* sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
depending on the ABI.
Alexandre Oliva [Fri, 14 Mar 2003 05:30:31 +0000 (05:30 +0000)]
* sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
Don't .set mips2 on new abi.
(compare_and_swap): Likewise. Support 64-bit longs on n64.
Roland McGrath [Fri, 14 Mar 2003 03:59:37 +0000 (03:59 +0000)]
2003-03-13 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/mips/add_n.S: Use L macro for local labels.
* sysdeps/mips/addmul_1.S: Likewise.
* sysdeps/mips/lshift.S: Likewise.
* sysdeps/mips/memcpy.S: Likewise.
* sysdeps/mips/memset.S: Likewise.
* sysdeps/mips/mul_1.S: Likewise.
* sysdeps/mips/rshift.S: Likewise.
* sysdeps/mips/sub_n.S: Likewise.
* sysdeps/mips/submul_1.S: Likewise.
* sysdeps/mips/mips64/add_n.S: Likewise.
* sysdeps/mips/mips64/addmul_1.S: Likewise.
* sysdeps/mips/mips64/lshift.S: Likewise.
* sysdeps/mips/mips64/mul_1.S: Likewise.
* sysdeps/mips/mips64/rshift.S: Likewise.
* sysdeps/mips/mips64/sub_n.S: Likewise.
* sysdeps/mips/mips64/submul_1.S: Likewise.
* sysdeps/unix/mips/sysdep.h: Define L() according to ABI
conventions. Define END as in sys/asm.h.
* sysdeps/unix/mips/sysdep.S: Likewise.
* sysdeps/unix/mips/wait.S: Likewise.
* sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
Andreas Jaeger [Thu, 13 Mar 2003 15:07:13 +0000 (15:07 +0000)]
Introduce and use local
label .Lthread_start since current binutils don't allow branches
to globally visible symbols.