Richard Henderson
f0a81bf387
alpha: Do signed promotion of 32-bit arguments to syscalls
2012-02-15 16:07:11 -08:00
Richard Henderson
64e65bc1ae
alpha: Correct relocation markup for PIC SYSCALL_ERROR_HANDLER.
2012-02-15 16:07:11 -08:00
Richard Henderson
15be932dfc
alpha: Don't check USE___THREAD in __syscall_error.
2012-02-15 12:19:47 -08:00
Richard Henderson
e544dcd508
alpha: Eliminate set-but-not-used warnings with internal syscalls.
2012-02-08 17:03:27 -08:00
Richard Henderson
f81b9186ff
alpha: Remove HAVE_TLS_SUPPORT and HAVE___THREAD tests.
2012-02-08 17:01:24 -08:00
Richard Henderson
ee390edfa9
alpha: Define PTR_MANGLE for !PIC too.
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:52 -07:00
Richard Henderson
cce01cf0a1
alpha: Avoid unused variable warnings with INTERNAL_SYSCALL_ERR*.
...
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:52 -07:00
Roland McGrath
b834ecbda3
2006-03-02 Roland McGrath <roland@redhat.com>
...
* sysdeps/unix/alpha/sysdep.h (PTR_MANGLE): Use __typeof in cast.
2006-03-03 11:21:28 +00:00
Ulrich Drepper
12d4d22726
Define PTR_MANGLE, PTR_MANGLE2, PTR_DEMANGLE, PTR_DEMANGLE2.
2006-01-13 21:46:29 +00:00
Richard Henderson
dc5ca5d1f6
[BZ #1358 ]
...
* sysdeps/unix/alpha/sysdep.h (inline_syscall1): Copy argument(s)
to a temporary first.
(inline_syscall2, inline_syscall3, inline_syscall4): Likewise.
(inline_syscall5, inline_syscall6): Likewise.
2005-09-20 05:35:42 +00:00
Roland McGrath
94645659a4
2004-10-04 Roland McGrath <roland@redhat.com>
...
* include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
to rtld_errno.
* sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
and don't define any other errno names.
* sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
place of errno.
* sysdeps/unix/i386/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
* sysdeps/unix/x86_64/sysdep.S: Likewise.
2004-10-04 20:59:38 +00:00
Richard Henderson
def004d709
* sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
...
* sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
to 16 byte boundaries.
2004-09-26 17:40:31 +00:00
Ulrich Drepper
d627d8fb46
(inline_syscall[0-6]): Change name argument to numbers from syscall names.
...
(INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
(INTERNAL_SYSCALL_NCS): Renamed from...
(INTERNAL_SYSCALL_1): ... this. Use INTERNAL_SYSCALL_NCS.
2004-09-23 05:15:41 +00:00
Ulrich Drepper
2acd67aa30
[BZ #231 ]
...
(__syscall_error): Avoid !samegp relocation in librt.so.
2004-06-28 21:02:47 +00:00
Ulrich Drepper
d32bff863e
(inline_syscall6): Fix a typo.
2004-06-28 21:02:06 +00:00
Ulrich Drepper
5e79bfc674
Lowlevel system dependent code for Unix/Alpha.
2004-06-22 05:55:22 +00:00
Ulrich Drepper
be8cedf82f
Additional makefile for Unix on Alpha.
2004-06-22 05:54:44 +00:00
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