Richard Henderson
6092f9e018
* sysdeps/unix/alpha/sysdep.h: Revert last change.
2004-01-16 06:04:53 +00:00
Richard Henderson
7bd9f5453c
* sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
...
!samegp relocation.
2004-01-16 06:02:52 +00:00
Richard Henderson
cfbf1a2f78
* sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
...
Cast old up to uint64_t before back down to inner width.
(__arch_compare_and_exchange_xxx_16_int): Likewise.
(__arch_compare_and_exchange_xxx_32_int): Likewise.
(__arch_compare_and_exchange_xxx_64_int): Likewise.
(__arch_compare_and_exchange_val_8_int): Cast result to
the type of the memory.
(__arch_compare_and_exchange_val_16_int): Likewise.
(__arch_compare_and_exchange_val_32_int): Likewise.
(__arch_compare_and_exchange_val_64_int): Likewise.
(atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
(atomic_compare_and_exchange_bool_rel): Likewise.
* sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
based on HAVE___THREAD instead of USE_TLS.
* sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
(__adjtimex_tv64): Use it.
* sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
to void* rather than directly to the compatibility structure type.
* sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
* sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
Forward declare.
2004-01-13 09:15:58 +00:00
Ulrich Drepper
724bab37c1
(PSEUDO_ERRVAL, PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
2003-08-17 00:33:13 +00:00
Richard Henderson
ebcd2cd199
* 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.
2003-06-20 16:24:36 +00:00
Ulrich Drepper
98f7320f07
Define PSEUDO_NOERRNO, PSEUDO_END_NOERRNO, and ret_NOERRNO.
2003-03-23 19:42:23 +00:00
Roland McGrath
3de1f4af04
2003-01-21 Jakub Jelinek <jakub@redhat.com>
...
* sysdeps/unix/alpha/sysdep.h (inline_syscall0,
inline_syscall1, inline_syscall2, inline_syscall3,
inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
* sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
__attribute__((unused)) to ChEcK.
2003-01-22 02:07:54 +00:00
Ulrich Drepper
af215add0a
(EPILOGUE, GPSAVEREG): New.
...
(LOADGP) [!PIC]: Rewrite to preserve caller's gp.
2003-01-17 19:19:55 +00:00
Ulrich Drepper
259eb5cdb8
(INLINE_SYSCALL): Undefined before defining.
2003-01-14 01:23:59 +00:00
Ulrich Drepper
aaadd842d8
Add inline syscall definitions.
...
(PSEUDO_LOADGP): Remove.
(PSEUDO_PROLOGUE): Load GP in non-pic case.
(SYSCALL_ERROR_LABEL): New.
(PSEUDO): Use it in error branch.
(PSEUDO_END): Add $syscall_error label.
2003-01-12 19:25:52 +00:00
Ulrich Drepper
df162e7602
Use correct definition of errno for NOT_IN_libc.
2003-01-12 19:23:03 +00:00
Ulrich Drepper
7d983cbb36
(PSEUDO): Use PSEUDO_PREPARE_ARGS.
2003-01-07 00:47:52 +00:00
Ulrich Drepper
ab18ecf4a7
Change defined(USE___THREAD) to USE___THREAD.
2002-11-28 22:47:04 +00:00
Roland McGrath
d5a256add3
2002-11-07 Richard Henderson <rth@redhat.com>
...
* elf/tls-macros.h: Add alpha versions.
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
* sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
* sysdeps/unix/alpha/sysdep.h: Likewise. Add SYSCALL_ERROR_HANDLER.
* sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
* sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/rt_sigaction.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/sigsuspend.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
2002-11-08 02:18:48 +00:00
Roland McGrath
54df0cf57d
2002-10-18 Roland McGrath <roland@redhat.com>
...
* sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
(inline_syscall_clobbers, inline_syscall0, inline_syscall1)
(inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
(inline_syscall6): Move these macros ...
* sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
2002-10-18 22:37:29 +00:00
Roland McGrath
d030d52da2
2002-10-07 Roland McGrath <roland@redhat.com>
...
* sysdeps/generic/errno.c: New file.
* csu/Makefile (aux): New variable, list errno.
* sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
* sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
* sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
* sysdeps/unix/alpha/sysdep.S: Likewise.
* sysdeps/generic/start.c: Likewise.
* sysdeps/unix/start.c: Likewise.
* sysdeps/unix/arm/start.c: Likewise.
* sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
* sysdeps/unix/sparc/start.c: Likewise.
* sysdeps/unix/sysv/irix4/start.c: Likewise.
* sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
2002-10-11 10:51:31 +00:00
Roland McGrath
13d6ef283d
2002-07-06 Bruno Haible <bruno@clisp.org>
...
* sysdeps/unix/sysv/linux/alpha/pipe.S: Moved to ...
* sysdeps/unix/alpha/pipe.S: ... here.
* sysdeps/unix/bsd/osf/alpha/pipe.S: File removed.
2002-08-26 11:37:32 +00:00
Andreas Jaeger
3214b89b32
Update to LGPL v2.1.
2001-07-06 04:56:23 +00:00
Ulrich Drepper
6e228438b9
(inline_syscall_clobbers): Add memory clobber.
2000-09-15 17:48:15 +00:00
Ulrich Drepper
13d54c34ab
(INLINE_SYSCALL*): New.
...
(inline_syscall*): New.
1998-10-31 23:37:54 +00:00
Ulrich Drepper
e0ebc3b2ef
Use __ASSEMBLER__ test macro not ASSEMBLER.
1998-05-29 10:20:59 +00:00
Ulrich Drepper
48a686308e
(SYSCALL_ERROR_HANDLER): Don't store into global errno if we already
...
store through __errno_location.
1998-03-06 11:38:58 +00:00
Ulrich Drepper
3616c197cd
Add _errno definition.
1998-02-26 17:14:15 +00:00
Ulrich Drepper
3acff87e5b
Tiny cleanups.
1997-05-31 00:46:24 +00:00
Ulrich Drepper
f1fc182396
update from main archive 961203
1996-12-04 01:41:27 +00:00
Ulrich Drepper
dd4b8913cd
update from 961105, second try
1996-11-07 01:34:35 +00:00
Ulrich Drepper
b1691e6dce
update from main archive 961001
1996-10-02 01:39:48 +00:00
Ulrich Drepper
44b8acdd3a
update from main archive 960906
1996-09-07 04:10:03 +00:00
Ulrich Drepper
11309adfce
update from main archive 960904
1996-09-05 02:48:53 +00:00
Roland McGrath
7cc46c1976
Wed Jul 17 10:54:20 1996 David Mosberger-Tang <davidm@azstarnet.com>
...
* sysdeps/unix/alpha/sysdep.S: Make errno a bss symbol, not a
common symbol (makes errno accessible from gdb).
1996-07-18 08:41:25 +00:00
Roland McGrath
8653138520
Fri Jun 28 16:53:01 1996 David Mosberger-Tang <davidm@azstarnet.com>
...
* sysdeps/unix/alpha/sysdep.h: Undo PIC-optimization of syscall
error handling. It's safer that way.
1996-07-01 22:16:32 +00:00
Roland McGrath
51ac76881f
Fri Jun 28 16:53:01 1996 David Mosberger-Tang <davidm@azstarnet.com>
...
* sysdeps/unix/alpha/sysdep.S: Make ldgp part of the prologue.
Fix by Richard Henderson.
1996-07-01 22:16:11 +00:00
Roland McGrath
bb486e187e
Mon Jun 10 17:50:31 1996 David Mosberger-Tang <davidm@azstarnet.com>
...
* sysdeps/unix/alpha/sysdep.h: Move error-handling code in PSEUDO
to PSEUDO_END to improve branch-prediction. Include .frame
directive to make syscalls debugabble.
(PSEUDO_END): New macro.
* sysdeps/unix/alpha/sysdep.h, sysdeps/alpha/bb_init_func.S,
sysdeps/unix/sysv/linux/alpha/brk.S: Use ldiq instead of ldi since
latter is illegal under DEC Unix.
1996-06-19 06:37:57 +00:00
Roland McGrath
e3829e904a
Mon Jun 10 17:50:31 1996 David Mosberger-Tang <davidm@azstarnet.com>
...
* sysdeps/unix/alpha/sysdep.S: Renamed from
sysdeps/unix/sysv/linux/alpha/sysdep.S. This file works for OSF/1
as well.
* sysdeps/unix/bsd/osf/alpha/sysdep.S: Remove (note that the
EWOULDBLOCK -> EAGAIN mapping was unnecessary since
EWOULDBLOCK==EAGAIN under DEC Unix and Linux/Alpha).
1996-06-19 06:37:47 +00:00
Roland McGrath
18a403782d
Wed May 29 00:57:37 1996 David Mosberger-Tang <davidm@azstarnet.com>
...
* sysdeps/unix/alpha/sysdep.h (END): Redefine to use .end
directive for both ELF and ECOFF.
(ret): Delete macro. It was a dangerous macro and unnecessary
since the Alpha assemblers recognizes "ret" as a macro themselves.
Thu May 23 02:15:56 1996 David Mosberger-Tang <davidm@azstarnet.com>
* sysdeps/unix/alpha/sysdep.h (ret): Remove macro. It is
dangerous and unnecessary since both OSF/1 as and gas define "ret"
as a pseudo-instruction.
1996-06-02 18:49:31 +00:00
Roland McGrath
92172913d2
Wed May 22 00:40:50 1996 David Mosberger-Tang <davidm@azstarnet.com>
...
* sysdeps/unix/alpha/sysdep.h: Include regdef.h. Define LEAF macro
to simplify declaration of leaf functions.
1996-05-23 05:32:14 +00:00
Roland McGrath
bf7a24fce2
Wed Feb 14 00:21:17 1996 David Mosberger-Tang <davidm@azstarnet.com>
...
* sysdeps/unix/alpha/sysdep.h: new file (adapted from OSF/1 version).
* sysdeps/unix/bsd/osf/alpha/sysdep.h: include
sysdeps/unix/alpha/sysdep.h and removed definitions now in that file.
1996-03-19 19:54:21 +00:00