about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2012-05-30 11:13:33 -0700
committerRichard Henderson <rth@twiddle.net>2012-05-30 11:14:24 -0700
commit1c37181459ddd2a3b201b2c49048aeb4258b7933 (patch)
tree92ec5564688581d10ec5b9c19491bb60b9e1bbc0
parenta88035b5fb970d4b47e22e6978704f94c7b46271 (diff)
downloadglibc-1c37181459ddd2a3b201b2c49048aeb4258b7933.tar.gz
glibc-1c37181459ddd2a3b201b2c49048aeb4258b7933.tar.xz
glibc-1c37181459ddd2a3b201b2c49048aeb4258b7933.zip
alpha: Purge __ASSUME_TIMEVAL64
-rw-r--r--ChangeLog.alpha19
-rw-r--r--sysdeps/unix/sysv/linux/alpha/adjtime.c147
-rw-r--r--sysdeps/unix/sysv/linux/alpha/getitimer.S112
-rw-r--r--sysdeps/unix/sysv/linux/alpha/getrusage.S148
-rw-r--r--sysdeps/unix/sysv/linux/alpha/gettimeofday.S119
-rw-r--r--sysdeps/unix/sysv/linux/alpha/kernel-features.h7
-rw-r--r--sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist2
-rw-r--r--sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist18
-rw-r--r--sysdeps/unix/sysv/linux/alpha/select.S240
-rw-r--r--sysdeps/unix/sysv/linux/alpha/setitimer.S136
-rw-r--r--sysdeps/unix/sysv/linux/alpha/settimeofday.S117
-rw-r--r--sysdeps/unix/sysv/linux/alpha/syscalls.list12
-rw-r--r--sysdeps/unix/sysv/linux/alpha/utimes.S122
-rw-r--r--sysdeps/unix/sysv/linux/alpha/wait4.S155
14 files changed, 50 insertions, 1304 deletions
diff --git a/ChangeLog.alpha b/ChangeLog.alpha
index 8096fb70d5..de1dc8ef9a 100644
--- a/ChangeLog.alpha
+++ b/ChangeLog.alpha
@@ -1,3 +1,22 @@
+2012-05-30  Richard Henderson  <rth@twiddle.net>
+
+	* sysdeps/unix/sysv/linux/alpha/adjtime.c: Remove __ASSUME_TIMEVAL64.
+	* sysdeps/unix/sysv/linux/alpha/getitimer.S: Remove file.
+	* sysdeps/unix/sysv/linux/alpha/getrusage.S: Remove file.
+	* sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Remove file.
+	* sysdeps/unix/sysv/linux/alpha/select.S: Remove file.
+	* sysdeps/unix/sysv/linux/alpha/setitimer.S: Remove file.
+	* sysdeps/unix/sysv/linux/alpha/settimeofday.S: Remove file.
+	* sysdeps/unix/sysv/linux/alpha/utimes.S: Remove file.
+	* sysdeps/unix/sysv/linux/alpha/wait4.S: Remove file.
+	* sysdeps/unix/sysv/linux/alpha/syscalls.list (getitimer): New.
+	(getrusage, gettimeofday, select, setitimer): New.
+	(settimeofday, utimes, wait4): New.
+	* sysdeps/unix/sysv/linux/alpha/kernel-features.h: Remove
+	__ASSUME_TIMEVAL64.
+	* sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist: Update.
+	* sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist: Update.
+
 2012-05-24  Richard Henderson  <rth@twiddle.net>
 
 	* sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist: New file.
diff --git a/sysdeps/unix/sysv/linux/alpha/adjtime.c b/sysdeps/unix/sysv/linux/alpha/adjtime.c
index ce1d220c37..b8c9820203 100644
--- a/sysdeps/unix/sysv/linux/alpha/adjtime.c
+++ b/sysdeps/unix/sysv/linux/alpha/adjtime.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998,2000,2002,2003,2004,2006 Free Software Foundation, Inc.
+/* Copyright (C) 1998-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -18,9 +18,9 @@
 #include <shlib-compat.h>
 #include <sysdep.h>
 #include <sys/time.h>
-#include <kernel-features.h>
 
-#if !defined __ASSUME_TIMEVAL64 || SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
+
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
 struct timeval32
 {
     int tv_sec, tv_usec;
@@ -60,160 +60,35 @@ struct timex32 {
 #define ADJTIME		attribute_compat_text_section __adjtime_tv32
 #define ADJTIMEX(x)	INLINE_SYSCALL (old_adjtimex, 1, x)
 #define ADJTIMEX32(x)	INLINE_SYSCALL (old_adjtimex, 1, x)
-#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
-#define LINKAGE
-#else
-#define LINKAGE		static
-#endif
-
-LINKAGE int ADJTIME (const struct TIMEVAL *itv, struct TIMEVAL *otv);
 
 #include <sysdeps/unix/sysv/linux/adjtime.c>
 
-#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
-int
-attribute_compat_text_section
+int attribute_compat_text_section
 __adjtimex_tv32 (struct timex32 *tx) { return ADJTIMEX (tx); }
+
 strong_alias (__adjtimex_tv32, __adjtimex_tv32_1);
 strong_alias (__adjtimex_tv32, __adjtimex_tv32_2);
 compat_symbol (libc, __adjtimex_tv32_1, __adjtimex, GLIBC_2_0);
 compat_symbol (libc, __adjtimex_tv32_2, adjtimex, GLIBC_2_0);
 compat_symbol (libc, __adjtime_tv32, adjtime, GLIBC_2_0);
-#endif
-#endif /* !__ASSUME_TIMEVAL64 || SHLIB_COMPAT */
+#endif /* SHLIB_COMPAT */
 
 #undef TIMEVAL
-#define TIMEVAL		timeval
 #undef TIMEX
-#define TIMEX		timex
+#undef ADJTIME
 #undef ADJTIMEX
+#define TIMEVAL		timeval
+#define TIMEX		timex
 #define ADJTIMEX(x)	INLINE_SYSCALL (adjtimex, 1, x)
 
-#undef LINKAGE
-#undef ADJTIME
-#if !defined __ASSUME_TIMEVAL64
-#define LINKAGE		static
-#define ADJTIME		__adjtime_tv64
-#endif
-
 #include <sysdeps/unix/sysv/linux/adjtime.c>
-#include <stdbool.h>
-
-#if !defined __ASSUME_TIMEVAL64
-static bool missing_adjtimex;
 
 int
-__adjtime (itv, otv)
-     const struct timeval *itv;
-     struct timeval *otv;
-{
-  struct timeval32 itv32, otv32;
-  int ret;
-
-  switch (missing_adjtimex)
-    {
-    case false:
-      ret = __adjtime_tv64 (itv, otv);
-      if (ret && errno == ENOSYS)
-	missing_adjtimex = 1;
-      else
-	break;
-
-      /* FALLTHRU */
-
-    default:
-      itv32.tv_sec = itv->tv_sec;
-      itv32.tv_usec = itv->tv_usec;
-      ret = __adjtime_tv32 (&itv32, &otv32);
-      if (ret == 0)
-	{
-	  otv->tv_sec = otv32.tv_sec;
-	  otv->tv_usec = otv32.tv_usec;
-	}
-      break;
-    }
-
-  return ret;
-}
-#endif
-
-versioned_symbol (libc, __adjtime, adjtime, GLIBC_2_1);
-
-int
-__adjtimex_tv64 (struct timex *tx)
-{
-#if defined __ASSUME_TIMEVAL64
-  return ADJTIMEX (tx);
-#else
-  struct timex32 tx32;
-  int ret;
-
-  switch (missing_adjtimex)
-    {
-    case false:
-      ret = ADJTIMEX (tx);
-      if (ret && errno == ENOSYS)
-	missing_adjtimex = 1;
-      else
-	break;
-
-      /* FALLTHRU */
-
-    default:
-      tx32.modes = tx->modes;
-      tx32.offset = tx->offset;
-      tx32.freq = tx->freq;
-      tx32.maxerror = tx->maxerror;
-      tx32.esterror = tx->esterror;
-      tx32.status = tx->status;
-      tx32.constant = tx->constant;
-      tx32.precision = tx->precision;
-      tx32.tolerance = tx->tolerance;
-      tx32.time.tv_sec = tx->time.tv_sec;
-      tx32.time.tv_sec = tx->time.tv_usec;
-      tx32.tick = tx->tick;
-      tx32.ppsfreq = tx->ppsfreq;
-      tx32.jitter = tx->jitter;
-      tx32.shift = tx->shift;
-      tx32.stabil = tx->stabil;
-      tx32.jitcnt = tx->jitcnt;
-      tx32.calcnt = tx->calcnt;
-      tx32.errcnt = tx->errcnt;
-      tx32.stbcnt = tx->stbcnt;
-
-      ret = ADJTIMEX32 (&tx32);
-      if (ret == 0)
-	{
-	  tx->modes = tx32.modes;
-	  tx->offset = tx32.offset;
-	  tx->freq = tx32.freq;
-	  tx->maxerror = tx32.maxerror;
-	  tx->esterror = tx32.esterror;
-	  tx->status = tx32.status;
-	  tx->constant = tx32.constant;
-	  tx->precision = tx32.precision;
-	  tx->tolerance = tx32.tolerance;
-	  tx->time.tv_sec = tx32.time.tv_sec;
-	  tx->time.tv_usec = tx32.time.tv_sec;
-	  tx->tick = tx32.tick;
-	  tx->ppsfreq = tx32.ppsfreq;
-	  tx->jitter = tx32.jitter;
-	  tx->shift = tx32.shift;
-	  tx->stabil = tx32.stabil;
-	  tx->jitcnt = tx32.jitcnt;
-	  tx->calcnt = tx32.calcnt;
-	  tx->errcnt = tx32.errcnt;
-	  tx->stbcnt = tx32.stbcnt;
-	}
-      break;
-    }
-
-  return ret;
-#endif
-}
+__adjtimex_tv64 (struct timex *tx) { return ADJTIMEX (tx); }
 
 strong_alias (__adjtimex_tv64, __adjtimex_internal);
 strong_alias (__adjtimex_tv64, __adjtimex_tv64p);
 weak_alias (__adjtimex_tv64, ntp_adjtime);
 versioned_symbol (libc, __adjtimex_tv64, __adjtimex, GLIBC_2_1);
 versioned_symbol (libc, __adjtimex_tv64p, adjtimex, GLIBC_2_1);
+versioned_symbol (libc, __adjtime, adjtime, GLIBC_2_1);
diff --git a/sysdeps/unix/sysv/linux/alpha/getitimer.S b/sysdeps/unix/sysv/linux/alpha/getitimer.S
deleted file mode 100644
index 6b18937815..0000000000
--- a/sysdeps/unix/sysv/linux/alpha/getitimer.S
+++ /dev/null
@@ -1,112 +0,0 @@
-/* Copyright (C) 1998, 2003, 2006, 2012 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sysdep.h>
-#define _ERRNO_H        1
-#include <bits/errno.h>
-#include <kernel-features.h>
-
-.text
-
-#if defined PIC && defined DO_VERSIONING
-#define GETITIMER	__getitimer_tv64
-#else
-#define GETITIMER	getitimer
-#endif
-
-#if defined __ASSUME_TIMEVAL64
-PSEUDO(GETITIMER, getitimer, 2)
-	ret
-PSEUDO_END(GETITIMER)
-#else
-/* The problem here is that initially we made struct timeval compatible with
-   OSF/1, using int32.  But we defined time_t with uint64, and later found
-   that POSIX requires tv_sec to be time_t.
-
-   So now we have to do compatibility stuff.  */
-
-/* The variable is shared between all wrappers around signal handling
-   functions which have RT equivalents.  */
-.comm __libc_missing_axp_tv64, 4
-
-LEAF(GETITIMER, 16)
-	ldgp	gp, 0(pv)
-	subq	sp, 16, sp
-#ifdef PROF
-	.set noat
-	lda	AT, _mcount
-	jsr	AT, (AT), _mcount
-	.set at
-#endif
-	.prologue 1
-
-	ldl	t0, __libc_missing_axp_tv64
-
-	/* Save arguments in case we do need to fall back.  */
-	stq	a0, 0(sp)
-	stq	a1, 8(sp)
-
-	bne	t0, $do32
-
-	ldi	v0, SYS_ify(getitimer)
-	callsys
-	bne	a3, $err64
-
-	/* Everything ok.  */
-	addq	sp, 16, sp
-	ret
-
-	/* If we didn't get ENOSYS, it is a real error.  */
-	.align 3
-$err64:	cmpeq	v0, ENOSYS, t0
-	beq	t0, $error
-	stl	t0, __libc_missing_axp_tv64
-
-	/* Recover the saved arguments.  */
-	ldq	a1, 8(sp)
-	ldq	a0, 0(sp)
-
-	.align 3
-$do32:	ldi	v0, SYS_ify(osf_getitimer)
-	callsys
-	bne	a3, $error
-
-	/* Copy back to proper format.  */
-	ldq	a1, 8(sp)
-	ldl	t0, 0(a1)
-	ldl	t1, 4(a1)
-	ldl	t2, 8(a1)
-	ldl	t3, 12(a1)
-	stq	t0, 0(a1)
-	stq	t1, 8(a1)
-	stq	t2, 16(a1)
-	stq	t3, 24(a1)
-
-	addq	sp, 16, sp
-	ret
-
-	.align 3
-$error:
-	addq	sp, 16, sp
-	SYSCALL_ERROR_HANDLER
-
-END(GETITIMER)
-#endif /* __ASSUME_TIMEVAL64 */
-
-#if defined PIC && defined DO_VERSIONING
-default_symbol_version (__getitimer_tv64, getitimer, GLIBC_2.1)
-#endif
diff --git a/sysdeps/unix/sysv/linux/alpha/getrusage.S b/sysdeps/unix/sysv/linux/alpha/getrusage.S
deleted file mode 100644
index 0129e30a09..0000000000
--- a/sysdeps/unix/sysv/linux/alpha/getrusage.S
+++ /dev/null
@@ -1,148 +0,0 @@
-/* Copyright (C) 1998, 2003, 2006, 2012 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sysdep.h>
-#define _ERRNO_H        1
-#include <bits/errno.h>
-#include <kernel-features.h>
-
-.text
-
-#if defined PIC && defined DO_VERSIONING
-#define GETRUSAGE	__getrusage_tv64
-#else
-#define GETRUSAGE	__getrusage
-#endif
-
-#if defined __ASSUME_TIMEVAL64
-PSEUDO(GETRUSAGE, getrusage, 2)
-	ret
-PSEUDO_END(GETRUSAGE)
-#else
-/* The problem here is that initially we made struct timeval compatible with
-   OSF/1, using int32.  But we defined time_t with uint64, and later found
-   that POSIX requires tv_sec to be time_t.
-
-   So now we have to do compatibility stuff.  */
-
-/* The variable is shared between all wrappers around signal handling
-   functions which have RT equivalents.  */
-.comm __libc_missing_axp_tv64, 4
-
-LEAF(GETRUSAGE, 16)
-	ldgp	gp, 0(pv)
-	subq	sp, 16, sp
-#ifdef PROF
-	.set noat
-	lda	AT, _mcount
-	jsr	AT, (AT), _mcount
-	.set at
-#endif
-	.prologue 1
-
-	ldl	t0, __libc_missing_axp_tv64
-
-	/* Save arguments in case we do need to fall back.  */
-	stq	a0, 0(sp)
-	stq	a1, 8(sp)
-
-	bne	t0, $do32
-
-	ldi	v0, SYS_ify(getrusage)
-	callsys
-	bne	a3, $err64
-
-	/* Everything ok.  */
-	addq	sp, 16, sp
-	ret
-
-	/* If we didn't get ENOSYS, it is a real error.  */
-	.align 3
-$err64:	cmpeq	v0, ENOSYS, t0
-	beq	t0, $error
-	stl	t0, __libc_missing_axp_tv64
-
-	/* Recover the saved arguments.  */
-	ldq	a1, 8(sp)
-	ldq	a0, 0(sp)
-
-	.align 3
-$do32:	ldi	v0, SYS_ify(osf_getrusage)
-	callsys
-	bne	a3, $error
-
-	/* Copy back to proper format.  */
-	ldq	a1, 8(sp)
-	ldl	t0, 0(a1)		# ru_utime.tv_sec
-	ldl	t1, 4(a1)		# ru_utime.tv_usec
-	ldl	t2, 8(a1)		# ru_stime.tv_sec
-	ldl	t3, 12(a1)		# ru_stime.tv_usec
-	ldt	$f15, 16(a1)		# ru_maxrss
-	ldt	$f16, 24(a1)		# ru_ixrss
-	ldt	$f17, 32(a1)		# ru_idrss
-	ldt	$f18, 40(a1)		# ru_isrss
-	ldt	$f19, 48(a1)		# ru_minflt
-	ldt	$f20, 56(a1)		# ru_majflt
-	ldt	$f21, 64(a1)		# ru_nswap
-	ldt	$f22, 72(a1)		# ru_inblock
-	ldt	$f23, 80(a1)		# ru_oublock
-	ldt	$f24, 88(a1)		# ru_msgsend
-	ldt	$f25, 96(a1)		# ru_msgrcv
-	ldt	$f26, 104(a1)		# ru_nsignals
-	ldt	$f27, 112(a1)		# ru_nvcsw
-	.set noat
-	ldt	$f28, 120(a1)		# ru_nivcsw
-	.set at
-	stq	t0, 0(a1)
-	stq	t1, 8(a1)
-	stq	t2, 16(a1)
-	stq	t3, 24(a1)
-	stt	$f15, 32(a1)
-	stt	$f16, 40(a1)
-	stt	$f17, 48(a1)
-	stt	$f18, 56(a1)
-	stt	$f19, 64(a1)
-	stt	$f20, 72(a1)
-	stt	$f21, 80(a1)
-	stt	$f22, 88(a1)
-	stt	$f23, 96(a1)
-	stt	$f24, 104(a1)
-	stt	$f25, 112(a1)
-	stt	$f26, 120(a1)
-	stt	$f27, 128(a1)
-	.set noat
-	stt	$f28, 136(a1)
-	.set at
-
-	addq	sp, 16, sp
-	ret
-
-	.align 3
-$error:
-	addq	sp, 16, sp
-	SYSCALL_ERROR_HANDLER
-
-END(GETRUSAGE)
-#endif /* __ASSUME_TIMEVAL64 */
-
-#if defined PIC && defined DO_VERSIONING
-strong_alias(__getrusage_tv64, ____getrusage_tv64)
-default_symbol_version (____getrusage_tv64, __getrusage, GLIBC_2.1)
-default_symbol_version (__getrusage_tv64, getrusage, GLIBC_2.1)
-#else
-weak_alias (__getrusage, getrusage)
-#endif
diff --git a/sysdeps/unix/sysv/linux/alpha/gettimeofday.S b/sysdeps/unix/sysv/linux/alpha/gettimeofday.S
deleted file mode 100644
index 53c43c5545..0000000000
--- a/sysdeps/unix/sysv/linux/alpha/gettimeofday.S
+++ /dev/null
@@ -1,119 +0,0 @@
-/* Copyright (C) 1998, 2002, 2003, 2006, 2012 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sysdep.h>
-#define _ERRNO_H        1
-#include <bits/errno.h>
-#include <kernel-features.h>
-
-.text
-
-#if defined PIC && defined DO_VERSIONING
-#define GETTIMEOFDAY	__gettimeofday_tv64
-#else
-#define GETTIMEOFDAY	__gettimeofday
-#endif
-
-#if defined __ASSUME_TIMEVAL64
-PSEUDO(GETTIMEOFDAY, gettimeofday, 2)
-	ret
-PSEUDO_END(GETTIMEOFDAY)
-#else
-
-/* The problem here is that initially we made struct timeval compatible with
-   OSF/1, using int32.  But we defined time_t with uint64, and later found
-   that POSIX requires tv_sec to be time_t.
-
-   So now we have to do compatibility stuff.  */
-
-/* The variable is shared between all wrappers around signal handling
-   functions which have RT equivalents.  */
-.comm __libc_missing_axp_tv64, 4
-
-LEAF(GETTIMEOFDAY, 16)
-	ldgp	gp, 0(pv)
-	subq	sp, 16, sp
-#ifdef PROF
-	.set noat
-	lda	AT, _mcount
-	jsr	AT, (AT), _mcount
-	.set at
-#endif
-	.prologue 1
-
-	ldl	t0, __libc_missing_axp_tv64
-
-	/* Save arguments in case we do need to fall back.  */
-	stq	a0, 0(sp)
-	stq	a1, 8(sp)
-
-	bne	t0, $do32
-
-	ldi	v0, SYS_ify(gettimeofday)
-	callsys
-	bne	a3, $err64
-
-	/* Everything ok.  */
-	addq	sp, 16, sp
-	ret
-
-	/* If we didn't get ENOSYS, it is a real error.  */
-	.align 3
-$err64:	cmpeq	v0, ENOSYS, t0
-	beq	t0, $error
-	stl	t0, __libc_missing_axp_tv64
-
-	/* Recover the saved arguments.  */
-	ldq	a1, 8(sp)
-	ldq	a0, 0(sp)
-
-	.align 3
-$do32:	ldi	v0, SYS_ify(osf_gettimeofday)
-	callsys
-	bne	a3, $error
-
-	/* Copy back to proper format.  */
-	ldq	a0, 0(sp)
-	beq	a0, 2f
-	ldl	t0, 0(a0)
-	ldl	t1, 4(a0)
-	stq	t0, 0(a0)
-	stq	t1, 8(a0)
-
-2:	addq	sp, 16, sp
-	ret
-
-	.align 3
-$error:
-	addq	sp, 16, sp
-	SYSCALL_ERROR_HANDLER
-
-END(GETTIMEOFDAY)
-#endif /* __ASSUME_TIMEVAL64 */
-
-#if defined PIC && defined DO_VERSIONING
-default_symbol_version (__gettimeofday_tv64, __gettimeofday, GLIBC_2.1)
-
-/* It seems to me to be a misfeature of the assembler that we can only
-   have one version-alias per symbol.  So create an alias ourselves.
-   The 'p' is for 'public'.  *Shrug*  */
-strong_alias (__gettimeofday_tv64, __gettimeofday_tv64p)
-default_symbol_version (__gettimeofday_tv64p, gettimeofday, GLIBC_2.1)
-#else
-weak_alias (__gettimeofday, gettimeofday)
-#endif
-strong_alias(GETTIMEOFDAY, __gettimeofday_internal)
diff --git a/sysdeps/unix/sysv/linux/alpha/kernel-features.h b/sysdeps/unix/sysv/linux/alpha/kernel-features.h
index 1f30c6598b..3eaa422b12 100644
--- a/sysdeps/unix/sysv/linux/alpha/kernel-features.h
+++ b/sysdeps/unix/sysv/linux/alpha/kernel-features.h
@@ -1,6 +1,6 @@
 /* Set flags signalling availability of kernel features based on given
    kernel version number.
-   Copyright (C) 2010 Free Software Foundation, Inc.
+   Copyright (C) 2010-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -20,11 +20,6 @@
 #ifndef _KERNEL_FEATURES_H
 #define _KERNEL_FEATURES_H 1
 
-/* alpha switched to a 64-bit timeval sometime before 2.2.0.  */
-#if __LINUX_KERNEL_VERSION >= 131584
-# define __ASSUME_TIMEVAL64	1
-#endif
-
 /* The tgkill syscall was introduced for alpha 2.6.0-test1 which unfortunately
    cannot be distinguished from 2.6.0.  */
 #if __LINUX_KERNEL_VERSION >= 132609
diff --git a/sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist
index d0dbb988c3..23ff7fa799 100644
--- a/sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist
@@ -9,9 +9,7 @@ GLIBC_2.0
 GLIBC_2.1
  GLIBC_2.1 A
  __libc_stack_end D 0x8
- __setitimer F
  _dl_mcount F
- setitimer F
 GLIBC_2.3
  GLIBC_2.3 A
  __tls_get_addr F
diff --git a/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist
index 5ece28f5a2..6d333aa522 100644
--- a/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist
@@ -124,6 +124,10 @@ GLIBC_2.0
  __deregister_frame F
  __deregister_frame_info F
  __dgettext F
+ __divl F
+ __divlu F
+ __divq F
+ __divqu F
  __dup2 F
  __environ D 0x8
  __errno_location F
@@ -195,6 +199,10 @@ GLIBC_2.0
  __register_frame_info F
  __register_frame_info_table F
  __register_frame_table F
+ __reml F
+ __remlu F
+ __remq F
+ __remqu F
  __res_randomid F
  __sbrk F
  __sched_get_priority_max F
@@ -1333,14 +1341,6 @@ GLIBC_2.0
  xencrypt F
  xprt_register F
  xprt_unregister F
-__divl GLIBC_2.0 g ? D .text 0000000000000060
-__divlu GLIBC_2.0 g ? D .text 0000000000000060
-__divq GLIBC_2.0 g ? D .text 00000000000001c4
-__divqu GLIBC_2.0 g ? D .text 000000000000018c
-__reml GLIBC_2.0 g ? D .text 0000000000000064
-__remlu GLIBC_2.0 g ? D .text 0000000000000064
-__remq GLIBC_2.0 g ? D .text 00000000000001c0
-__remqu GLIBC_2.0 g ? D .text 00000000000001b4
 GLIBC_2.1
  GLIBC_2.1 A
  _IO_2_1_stderr_ D 0xe0
@@ -1440,8 +1440,6 @@ GLIBC_2.1
  __towctrans_l F
  __towlower_l F
  __towupper_l F
- __utimes F
- __wait4 F
  __wcscasecmp_l F
  __wcscoll_l F
  __wcsncasecmp_l F
diff --git a/sysdeps/unix/sysv/linux/alpha/select.S b/sysdeps/unix/sysv/linux/alpha/select.S
deleted file mode 100644
index 9a141398df..0000000000
--- a/sysdeps/unix/sysv/linux/alpha/select.S
+++ /dev/null
@@ -1,240 +0,0 @@
-/* Copyright (C) 1998,2002,2003,2006,2012 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sysdep-cancel.h>
-#define _ERRNO_H        1
-#include <bits/errno.h>
-#include <kernel-features.h>
-
-.text
-
-#if defined PIC && defined DO_VERSIONING
-#define SELECT	__select_tv64
-#else
-#define SELECT	__select
-#endif
-
-#if defined __ASSUME_TIMEVAL64
-PSEUDO(SELECT, select, 5)
-	ret
-PSEUDO_END(SELECT)
-#else
-/* The problem here is that initially we made struct timeval compatible with
-   OSF/1, using int32.  But we defined time_t with uint64, and later found
-   that POSIX requires tv_sec to be time_t.
-
-   So now we have to do compatibility stuff.  */
-
-/* The variable is shared between all wrappers around signal handling
-   functions which have RT equivalents.  */
-.comm __libc_missing_axp_tv64, 4
-
-LEAF(SELECT, 64)
-	ldgp	gp, 0(pv)
-	subq	sp, 64, sp
-#ifdef PROF
-	.set noat
-	lda	AT, _mcount
-	jsr	AT, (AT), _mcount
-	.set at
-#endif
-	stq	ra, 40(sp)
-	.mask	0x4000000, 40-64
-	.prologue 1
-
-#ifdef CENABLE
-	SINGLE_THREAD_P (t1)
-#else
-	ldl	t0, __libc_missing_axp_tv64
-#endif
-
-	/* Save timeout early, since we'll need to recover this after
-	   the system call.  */
-	stq	a4, 48(sp)
-
-#ifdef CENABLE
-	bne	t1, $do_cancel
-#endif
-
-	bne	t0, $do32
-
-	/* Save arguments in case we do need to fall back.  */
-	stq	a0, 8(sp)
-	stq	a1, 16(sp)
-	stq	a2, 24(sp)
-	stq	a3, 32(sp)
-
-	ldi	v0, SYS_ify(select)
-	callsys
-	bne	a3, $err64
-
-	/* Everything ok.  */
-	addq	sp, 64, sp
-	ret
-
-	/* If we didn't get ENOSYS, it is a real error.  */
-	.align 3
-$err64:	cmpeq	v0, ENOSYS, t0
-	beq	t0, $error
-	stl	t0, __libc_missing_axp_tv64
-
-	/* Recover the saved arguments.  */
-	ldq	a4, 48(sp)
-	ldq	a3, 32(sp)
-	ldq	a2, 24(sp)
-	ldq	a1, 16(sp)
-	ldq	a0, 8(sp)
-
-	.align 3
-$do32:
-	/* If the timeout argument is present bounce to the smaller fmt.  */
-	beq	a4, 1f
-	ldq	t0, 0(a4)
-	ldq	t1, 8(a4)
-	stl	t0, 0(sp)
-	stl	t1, 4(sp)
-	mov	sp, a4
-
-1:	ldi	v0, SYS_ify(osf_select)
-	callsys
-	bne	a3, $error
-
-	/* ... and bounce the remaining timeout back.  */
-	ldq	a4, 48(sp)
-	beq	a4, 2f
-	ldl	t0, 0(sp)
-	ldl	t1, 4(sp)
-	stq	t0, 0(a4)
-	stq	t1, 8(a4)
-
-2:	addq	sp, 64, sp
-	ret
-
-#ifdef CENABLE
-	.align	3
-$do_cancel:
-	/* Save arguments.  */
-	stq	a0, 8(sp)
-	stq	a1, 16(sp)
-	stq	a2, 24(sp)
-	stq	a3, 32(sp)
-
-	CENABLE
-	mov	v0, ra
-
-	ldl	t0, __libc_missing_axp_tv64
-	bne	t0, $do_cancel32
-
-	/* Recover the saved arguments.  */
-	ldq	a4, 48(sp)
-	ldq	a3, 32(sp)
-	ldq	a2, 24(sp)
-	ldq	a1, 16(sp)
-	ldq	a0, 8(sp)
-
-	ldi	v0, SYS_ify(select)
-	callsys
-
-	mov	ra, a0
-	bne	a3, $cancel_err64
-
-	stq	v0, 8(sp)
-	CDISABLE
-	ldq	v0, 8(sp)
-	ldq	ra, 40(sp)
-
-	/* Everything ok.  */
-	addq	sp, 64, sp
-	ret
-
-	/* If we didn't get ENOSYS, it is a real error.  */
-	.align 3
-$cancel_err64:
-	cmpeq	v0, ENOSYS, t0
-	beq	t0, $cancel_error
-	stl	t0, __libc_missing_axp_tv64
-
-	/* Recover the saved arguments.  */
-	.align 3
-$do_cancel32:
-	ldq	a4, 48(sp)
-	ldq	a3, 32(sp)
-	ldq	a2, 24(sp)
-	ldq	a1, 16(sp)
-	ldq	a0, 8(sp)
-
-	/* If the timeout argument is present bounce to the smaller fmt.  */
-	beq	a4, 1f
-	ldq	t0, 0(a4)
-	ldq	t1, 8(a4)
-	stl	t0, 0(sp)
-	stl	t1, 4(sp)
-	mov	sp, a4
-
-1:	ldi	v0, SYS_ify(osf_select)
-	callsys
-
-	mov	ra, a0
-	bne	a3, $cancel_error
-
-	/* ... and bounce the remaining timeout back.  */
-	ldq	a4, 48(sp)
-	beq	a4, 2f
-	ldl	t0, 0(sp)
-	ldl	t1, 4(sp)
-	stq	t0, 0(a4)
-	stq	t1, 8(a4)
-
-2:	stq	v0, 8(sp)
-	CDISABLE
-	ldq	v0, 8(sp)
-	ldq	ra, 40(sp)
-
-	addq	sp, 64, sp
-	ret
-
-	.align 3
-$cancel_error:
-	stq	v0, 8(sp)
-	CDISABLE
-	ldq	v0, 8(sp)
-	ldq	ra, 40(sp)
-#endif
-
-	.align 3
-$error:
-	addq	sp, 64, sp
-	SYSCALL_ERROR_HANDLER
-
-END(SELECT)
-#endif /* __ASSUME_TIMEVAL64 */
-
-#if defined PIC && defined DO_VERSIONING
-default_symbol_version (__select_tv64, __select, GLIBC_2.1)
-
-/* It seems to me to be a misfeature of the assembler that we can only
-   have one version-alias per symbol.  So create an alias ourselves.
-   The 'p' is for 'public'.  *Shrug*  */
-strong_alias (__select_tv64, __select_tv64p)
-default_symbol_version (__select_tv64p, select, GLIBC_2.1)
-libc_hidden_ver (__select_tv64, __select)
-strong_alias (__select_tv64, __libc_select)
-#else
-strong_alias (__select, __libc_select)
-weak_alias (__select, select)
-libc_hidden_def (__select)
-#endif
diff --git a/sysdeps/unix/sysv/linux/alpha/setitimer.S b/sysdeps/unix/sysv/linux/alpha/setitimer.S
deleted file mode 100644
index f8b2f9888b..0000000000
--- a/sysdeps/unix/sysv/linux/alpha/setitimer.S
+++ /dev/null
@@ -1,136 +0,0 @@
-/* Copyright (C) 1998, 2003, 2006, 2012 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sysdep.h>
-#define _ERRNO_H        1
-#include <bits/errno.h>
-#include <kernel-features.h>
-
-.text
-
-#if defined PIC && defined DO_VERSIONING
-#define SETITIMER	__setitimer_tv64
-#else
-#define SETITIMER	__setitimer
-#endif
-
-#if defined __ASSUME_TIMEVAL64
-PSEUDO(SETITIMER, setitimer, 3)
-	ret
-PSEUDO_END(SETITIMER)
-#else
-/* The problem here is that initially we made struct timeval compatible with
-   OSF/1, using int32.  But we defined time_t with uint64, and later found
-   that POSIX requires tv_sec to be time_t.
-
-   So now we have to do compatibility stuff.  */
-
-/* The variable is shared between all wrappers around signal handling
-   functions which have RT equivalents.  */
-.comm __libc_missing_axp_tv64, 4
-
-LEAF(SETITIMER, 48)
-	ldgp	gp, 0(pv)
-	subq	sp, 48, sp
-#ifdef PROF
-	.set noat
-	lda	AT, _mcount
-	jsr	AT, (AT), _mcount
-	.set at
-#endif
-	.prologue 1
-
-	ldl	t0, __libc_missing_axp_tv64
-
-	/* Save arguments in case we do need to fall back.  */
-	stq	a0, 0(sp)
-	stq	a1, 8(sp)
-	stq	a2, 16(sp)
-
-	bne	t0, $do32
-
-	ldi	v0, SYS_ify(setitimer)
-	callsys
-	bne	a3, $err64
-
-	/* Everything ok.  */
-	addq	sp, 48, sp
-	ret
-
-	/* If we didn't get ENOSYS, it is a real error.  */
-	.align 3
-$err64:	cmpeq	v0, ENOSYS, t0
-	beq	t0, $error
-	stl	t0, __libc_missing_axp_tv64
-
-	/* Recover the saved arguments.  */
-	ldq	a2, 16(sp)
-	ldq	a1, 8(sp)
-	ldq	a0, 0(sp)
-
-	.align 3
-$do32:
-	/* Conditionally bounce new value down.  */
-	beq	a1, 1f
-	ldq	t0, 0(a1)
-	ldq	t1, 8(a1)
-	ldq	t2, 16(a1)
-	ldq	t3, 24(a1)
-	stl	t0, 32(sp)
-	stl	t1, 36(sp)
-	stl	t2, 40(sp)
-	stl	t3, 44(sp)
-	addq	sp, 32, a1
-
-1:	ldi	v0, SYS_ify(osf_setitimer)
-	callsys
-	bne	a3, $error
-
-	/* Conditionaly bounce old value up.  */
-	ldq	a2, 16(sp)
-	bne	a2, 2f
-	ldl	t0, 0(a2)
-	ldl	t1, 4(a2)
-	ldl	t2, 8(a2)
-	ldl	t3, 12(a2)
-	stq	t0, 0(a2)
-	stq	t1, 8(a2)
-	stq	t2, 48(a2)
-	stq	t3, 24(a2)
-
-2:	addq	sp, 48, sp
-	ret
-
-	.align 3
-$error:
-	addq	sp, 48, sp
-	SYSCALL_ERROR_HANDLER
-
-END(SETITIMER)
-#endif /* __ASSUME_TIMEVAL64 */
-
-#if defined PIC && defined DO_VERSIONING
-default_symbol_version (__setitimer_tv64, __setitimer, GLIBC_2.1)
-
-/* It seems to me to be a misfeature of the assembler that we can only
-   have one version-alias per symbol.  So create an alias ourselves.
-   The 'p' is for 'public'.  *Shrug*  */
-strong_alias (__setitimer_tv64, __setitimer_tv64p)
-default_symbol_version (__setitimer_tv64p, setitimer, GLIBC_2.1)
-#else
-weak_alias (__setitimer, setitimer)
-#endif
diff --git a/sysdeps/unix/sysv/linux/alpha/settimeofday.S b/sysdeps/unix/sysv/linux/alpha/settimeofday.S
deleted file mode 100644
index b56c215fcd..0000000000
--- a/sysdeps/unix/sysv/linux/alpha/settimeofday.S
+++ /dev/null
@@ -1,117 +0,0 @@
-/* Copyright (C) 1998, 2003, 2006, 2012 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sysdep.h>
-#define _ERRNO_H        1
-#include <bits/errno.h>
-#include <kernel-features.h>
-
-.text
-
-#if defined PIC && defined DO_VERSIONING
-#define SETTIMEOFDAY	__settimeofday_tv64
-#else
-#define SETTIMEOFDAY	__settimeofday
-#endif
-
-#if defined __ASSUME_TIMEVAL64
-PSEUDO(SETTIMEOFDAY, settimeofday, 2)
-	ret
-PSEUDO_END(SETTIMEOFDAY)
-#else
-/* The problem here is that initially we made struct timeval compatible with
-   OSF/1, using int32.  But we defined time_t with uint64, and later found
-   that POSIX requires tv_sec to be time_t.
-
-   So now we have to do compatibility stuff.  */
-
-/* The variable is shared between all wrappers around signal handling
-   functions which have RT equivalents.  */
-.comm __libc_missing_axp_tv64, 4
-
-LEAF(SETTIMEOFDAY, 16)
-	ldgp	gp, 0(pv)
-	subq	sp, 16, sp
-#ifdef PROF
-	.set noat
-	lda	AT, _mcount
-	jsr	AT, (AT), _mcount
-	.set at
-#endif
-	.prologue 1
-
-	ldl	t0, __libc_missing_axp_tv64
-	bne	t0, $do32
-
-	/* Save arguments in case we do need to fall back.  */
-	stq	a0, 0(sp)
-	stq	a1, 8(sp)
-
-	ldi	v0, SYS_ify(settimeofday)
-	callsys
-	bne	a3, $err64
-
-	/* Everything ok.  */
-	addq	sp, 16, sp
-	ret
-
-	/* If we didn't get ENOSYS, it is a real error.  */
-	.align 3
-$err64:	cmpeq	v0, ENOSYS, t0
-	beq	t0, $error
-	stl	t0, __libc_missing_axp_tv64
-
-	/* Recover the saved arguments.  */
-	ldq	a1, 8(sp)
-	ldq	a0, 0(sp)
-
-	.align 3
-$do32:
-	/* Conditionally bounce the timeval down.  */
-	beq	a0, 1f
-	ldq	t0, 0(a0)
-	ldq	t1, 8(a0)
-	stl	t0, 0(sp)
-	stl	t1, 4(sp)
-	mov	sp, a0
-
-1:	ldi	v0, SYS_ify(osf_settimeofday)
-	callsys
-	bne	a3, $error
-
-	addq	sp, 16, sp
-	ret
-
-	.align 3
-$error:
-	addq	sp, 16, sp
-	SYSCALL_ERROR_HANDLER
-
-END(SETTIMEOFDAY)
-#endif /* __ASSUME_TIMEVAL64 */
-
-#if defined PIC && defined DO_VERSIONING
-default_symbol_version (__settimeofday_tv64, __settimeofday, GLIBC_2.1)
-
-/* It seems to me to be a misfeature of the assembler that we can only
-   have one version-alias per symbol.  So create an alias ourselves.
-   The 'p' is for 'public'.  *Shrug*  */
-strong_alias (__settimeofday_tv64, __settimeofday_tv64p)
-default_symbol_version (__settimeofday_tv64p, settimeofday, GLIBC_2.1)
-#else
-weak_alias (__settimeofday, settimeofday)
-#endif
diff --git a/sysdeps/unix/sysv/linux/alpha/syscalls.list b/sysdeps/unix/sysv/linux/alpha/syscalls.list
index 412b675198..809d82b687 100644
--- a/sysdeps/unix/sysv/linux/alpha/syscalls.list
+++ b/sysdeps/unix/sysv/linux/alpha/syscalls.list
@@ -52,7 +52,17 @@ osf_getitimer	-	osf_getitimer	2	__getitimer_tv32  getitimer@GLIBC_2.0
 osf_setitimer	-	osf_setitimer	3	__setitimer_tv32  setitimer@GLIBC_2.0
 osf_utimes	-	osf_utimes	2	__utimes_tv32  utimes@GLIBC_2.0
 osf_getrusage	-	osf_getrusage	2	__getrusage_tv32  getrusage@GLIBC_2.0
-osf_wait4	-	osf_wait4	2	__wait4_tv32  wait4@GLIBC_2.0
+osf_wait4	-	osf_wait4	4	__wait4_tv32  wait4@GLIBC_2.0
+
+# support new timeval64 entry points
+select		-	select		C:5	__GI___select select@@GLIBC_2.1 __select@@GLIBC_2.1
+gettimeofday	-	gettimeofday	2	__GI___gettimeofday gettimeofday@@GLIBC_2.1 __gettimeofday@@GLIBC_2.1
+settimeofday	-	settimeofday	2	__settimeofday settimeofday@@GLIBC_2.1
+getitimer	-	getitimer	2	__getitimer getitimer@@GLIBC_2.1
+setitimer	-	setitimer	3	__setitimer setitimer@@GLIBC_2.1
+utimes		-	utimes		2	__utimes utimes@@GLIBC_2.1
+getrusage	-	getrusage	2	__getrusage getrusage@@GLIBC_2.1
+wait4		-	wait4		4	__wait4 wait4@@GLIBC_2.1
 
 # avoid 64-bit aliases on 32-bit statfs syscalls
 fstatfs		-	fstatfs		i:ip	__fstatfs	fstatfs
diff --git a/sysdeps/unix/sysv/linux/alpha/utimes.S b/sysdeps/unix/sysv/linux/alpha/utimes.S
deleted file mode 100644
index 18eb136742..0000000000
--- a/sysdeps/unix/sysv/linux/alpha/utimes.S
+++ /dev/null
@@ -1,122 +0,0 @@
-/* Copyright (C) 1998, 2003, 2006, 2012 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sysdep.h>
-#define _ERRNO_H        1
-#include <bits/errno.h>
-#include <kernel-features.h>
-
-.text
-
-#if defined PIC && defined DO_VERSIONING
-#define UTIMES	__utimes_tv64
-#else
-#define UTIMES	__utimes
-#endif
-
-#if defined __ASSUME_TIMEVAL64
-PSEUDO(UTIMES, utimes, 2)
-	ret
-PSEUDO_END(UTIMES)
-#else
-/* The problem here is that initially we made struct timeval compatible with
-   OSF/1, using int32.  But we defined time_t with uint64, and later found
-   that POSIX requires tv_sec to be time_t.
-
-   So now we have to do compatibility stuff.  */
-
-/* The variable is shared between all wrappers around signal handling
-   functions which have RT equivalents.  */
-.comm __libc_missing_axp_tv64, 4
-
-LEAF(UTIMES, 16)
-	ldgp	gp, 0(pv)
-	subq	sp, 16, sp
-#ifdef PROF
-	.set noat
-	lda	AT, _mcount
-	jsr	AT, (AT), _mcount
-	.set at
-#endif
-	.prologue 1
-
-	ldl	t0, __libc_missing_axp_tv64
-
-	/* Save arguments in case we do need to fall back.  */
-	stq	a0, 0(sp)
-	stq	a1, 8(sp)
-
-	bne	t0, $do32
-
-	ldi	v0, SYS_ify(utimes)
-	callsys
-	bne	a3, $err64
-
-	/* Everything ok.  */
-	addq	sp, 16, sp
-	ret
-
-	/* If we didn't get ENOSYS, it is a real error.  */
-	.align 3
-$err64:	cmpeq	v0, ENOSYS, t0
-	beq	t0, $error
-	stl	t0, __libc_missing_axp_tv64
-
-	/* Recover the saved arguments.  */
-	ldq	a1, 8(sp)
-	ldq	a0, 0(sp)
-
-	.align 3
-$do32:
-	/* Conditionally bounce values down.  */
-	beq	a1, 1f
-	ldq	t0, 0(a1)
-	ldq	t1, 8(a1)
-	ldq	t2, 16(a1)
-	ldq	t3, 24(a1)
-	stl	t0, 0(sp)
-	stl	t1, 4(sp)
-	stl	t2, 8(sp)
-	stl	t3, 12(sp)
-	mov	sp, a1
-
-1:	ldi	v0, SYS_ify(osf_utimes)
-	callsys
-	bne	a3, $error
-
-	addq	sp, 16, sp
-	ret
-
-	.align 3
-$error:
-	addq	sp, 16, sp
-	SYSCALL_ERROR_HANDLER
-
-END(UTIMES)
-#endif /* __ASSUME_TIMEVAL64 */
-
-#if defined PIC && defined DO_VERSIONING
-default_symbol_version (__utimes_tv64, __utimes, GLIBC_2.1)
-
-/* It seems to me to be a misfeature of the assembler that we can only
-   have one version-alias per symbol.  So create an alias ourselves.
-   The 'p' is for 'public'.  *Shrug*  */
-strong_alias (__utimes_tv64, __utimes_tv64p)
-default_symbol_version (__utimes_tv64p, utimes, GLIBC_2.1)
-#else
-weak_alias (__utimes, utimes)
-#endif
diff --git a/sysdeps/unix/sysv/linux/alpha/wait4.S b/sysdeps/unix/sysv/linux/alpha/wait4.S
deleted file mode 100644
index 7a71fd01ef..0000000000
--- a/sysdeps/unix/sysv/linux/alpha/wait4.S
+++ /dev/null
@@ -1,155 +0,0 @@
-/* Copyright (C) 1998, 2003, 2006, 2012 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sysdep.h>
-#define _ERRNO_H        1
-#include <bits/errno.h>
-#include <kernel-features.h>
-
-.text
-
-#if defined PIC && defined DO_VERSIONING
-#define WAIT4	__wait4_tv64
-#else
-#define WAIT4	__wait4
-#endif
-
-#if defined __ASSUME_TIMEVAL64
-PSEUDO(WAIT4, wait4, 4)
-	ret
-PSEUDO_END(WAIT4)
-#else
-/* The problem here is that initially we made struct timeval compatible with
-   OSF/1, using int32.  But we defined time_t with uint64, and later found
-   that POSIX requires tv_sec to be time_t.
-
-   So now we have to do compatibility stuff.  */
-
-/* The variable is shared between all wrappers around signal handling
-   functions which have RT equivalents.  */
-.comm __libc_missing_axp_tv64, 4
-
-LEAF(WAIT4, 32)
-	ldgp	gp, 0(pv)
-	subq	sp, 32, sp
-#ifdef PROF
-	.set noat
-	lda	AT, _mcount
-	jsr	AT, (AT), _mcount
-	.set at
-#endif
-	.prologue 1
-
-	ldl	t0, __libc_missing_axp_tv64
-
-	/* Save arguments in case we do need to fall back.  */
-	stq	a0, 0(sp)
-	stq	a1, 8(sp)
-	stq	a2, 16(sp)
-	stq	a3, 24(sp)
-
-	bne	t0, $do32
-
-	ldi	v0, SYS_ify(wait4)
-	callsys
-	bne	a3, $err64
-
-	/* Everything ok.  */
-	addq	sp, 32, sp
-	ret
-
-	/* If we didn't get ENOSYS, it is a real error.  */
-	.align 3
-$err64:	cmpeq	v0, ENOSYS, t0
-	beq	t0, $error
-	stl	t0, __libc_missing_axp_tv64
-
-	/* Recover the saved arguments.  */
-	ldq	a3, 24(sp)
-	ldq	a2, 16(sp)
-	ldq	a1, 8(sp)
-	ldq	a0, 0(sp)
-
-	.align 3
-$do32:	ldi	v0, SYS_ify(osf_wait4)
-	callsys
-	bne	a3, $error
-
-	/* Copy back to proper format.  */
-	ldq	a3, 24(sp)
-	beq	a3, 2f
-	ldl	t0, 0(a3)		# ru_utime.tv_sec
-	ldl	t1, 4(a3)		# ru_utime.tv_usec
-	ldl	t2, 8(a3)		# ru_stime.tv_sec
-	ldl	t3, 12(a3)		# ru_stime.tv_usec
-	ldt	$f15, 16(a3)		# ru_maxrss
-	ldt	$f16, 24(a3)		# ru_ixrss
-	ldt	$f17, 32(a3)		# ru_idrss
-	ldt	$f18, 40(a3)		# ru_isrss
-	ldt	$f19, 48(a3)		# ru_minflt
-	ldt	$f20, 56(a3)		# ru_majflt
-	ldt	$f21, 64(a3)		# ru_nswap
-	ldt	$f22, 72(a3)		# ru_inblock
-	ldt	$f23, 80(a3)		# ru_oublock
-	ldt	$f24, 88(a3)		# ru_msgsend
-	ldt	$f25, 96(a3)		# ru_msgrcv
-	ldt	$f26, 104(a3)		# ru_nsignals
-	ldt	$f27, 112(a3)		# ru_nvcsw
-	.set noat
-	ldt	$f28, 120(a3)		# ru_nivcsw
-	stq	t0, 0(a3)
-	stq	t1, 8(a3)
-	stq	t2, 16(a3)
-	stq	t3, 24(a3)
-	stt	$f15, 32(a3)
-	stt	$f16, 40(a3)
-	stt	$f17, 48(a3)
-	stt	$f18, 56(a3)
-	stt	$f19, 64(a3)
-	stt	$f20, 72(a3)
-	stt	$f21, 80(a3)
-	stt	$f22, 88(a3)
-	stt	$f23, 96(a3)
-	stt	$f24, 104(a3)
-	stt	$f25, 112(a3)
-	stt	$f26, 120(a3)
-	stt	$f27, 128(a3)
-	stt	$f28, 136(a3)
-	.set at
-
-2:	addq	sp, 32, sp
-	ret
-
-	.align 3
-$error:
-	addq	sp, 32, sp
-	SYSCALL_ERROR_HANDLER
-
-END(WAIT4)
-#endif /* __ASSUME_TIMEVAL64 */
-
-#if defined PIC && defined DO_VERSIONING
-default_symbol_version (__wait4_tv64, __wait4, GLIBC_2.1)
-
-/* It seems to me to be a misfeature of the assembler that we can only
-   have one version-alias per symbol.  So create an alias ourselves.
-   The 'p' is for 'public'.  *Shrug*  */
-strong_alias (__wait4_tv64, __wait4_tv64p)
-default_symbol_version (__wait4_tv64p, wait4, GLIBC_2.1)
-#else
-weak_alias (__wait4, wait4)
-#endif