summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-07-27 19:02:36 +0000
committerUlrich Drepper <drepper@redhat.com>2003-07-27 19:02:36 +0000
commit35107e0ce4a5ba642890a057ad5fc080d71ed9a4 (patch)
treea80adffd3636e1618a752a2d1a84f2e7f3ddd5c8
parent54943a039f993e5fa929392da639337a18d4fbeb (diff)
Update.
* sysdeps/unix/sysv/syscalls.list: time syscall never fails. * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails. * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
-rw-r--r--ChangeLog3
-rw-r--r--sysdeps/unix/sysv/i386/time.S6
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/time.S8
-rw-r--r--sysdeps/unix/sysv/syscalls.list2
4 files changed, 9 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 3357a1dabb..8cb8f94ceb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2003-07-27 Ulrich Drepper <drepper@redhat.com>
+ * sysdeps/unix/sysv/syscalls.list: time syscall never fails.
+ * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails.
+ * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
* sysdeps/unix/syscalls.list: umask syscall never fails.
2003-07-27 Andreas Jaeger <aj@suse.de>
diff --git a/sysdeps/unix/sysv/i386/time.S b/sysdeps/unix/sysv/i386/time.S
index 1d5395a131..83b8d1fd6f 100644
--- a/sysdeps/unix/sysv/i386/time.S
+++ b/sysdeps/unix/sysv/i386/time.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,96,97,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,96,97,2002, 2003 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
@@ -19,12 +19,12 @@
#include <sysdep.h>
#include <asm-syntax.h>
-SYSCALL (time, 1)
+PSEUDO_NOERRNO (time, time, 1)
movl 4(%esp), %edx /* Put passed pointer in %edx. */
testl %edx, %edx /* Is it non-nil? */
je L(null)
movl %eax, (%edx) /* Yes; store the time there. */
L(null):
ret
-PSEUDO_END (time)
+PSEUDO_END_NOERRNO (time)
libc_hidden_def (time)
diff --git a/sysdeps/unix/sysv/linux/x86_64/time.S b/sysdeps/unix/sysv/linux/x86_64/time.S
index 55d5a00f94..e3f3268764 100644
--- a/sysdeps/unix/sysv/linux/x86_64/time.S
+++ b/sysdeps/unix/sysv/linux/x86_64/time.S
@@ -31,16 +31,12 @@ ENTRY (time)
/* Align stack. */
sub $0x8, %rsp
cfi_adjust_cfa_offset(8)
-
+
movq $VSYSCALL_ADDR_vtime, %rax
callq *%rax
- /* Check error return. */
- cmpl $-4095, %eax
- jae SYSCALL_ERROR_LABEL
-L(pseudo_end):
add $0x8, %rsp
cfi_adjust_cfa_offset(-8)
ret
-PSEUDO_END(time)
+PSEUDO_END_NOERRNO(time)
libc_hidden_def (time)
diff --git a/sysdeps/unix/sysv/syscalls.list b/sysdeps/unix/sysv/syscalls.list
index d945ff014e..436d05eb9a 100644
--- a/sysdeps/unix/sysv/syscalls.list
+++ b/sysdeps/unix/sysv/syscalls.list
@@ -10,7 +10,7 @@ setrlimit - setrlimit i:ip __setrlimit setrlimit
settimeofday - settimeofday i:PP __settimeofday settimeofday
signal - signal i:ii signal
stime - stime i:p stime
-time - time i:P time
+time - time Ei:P time
times - times i:p __times times
ulimit - ulimit i:ii ulimit
utime - utime i:sP utime