summaryrefslogtreecommitdiff
path: root/sysdeps/unix/make-syscalls.sh
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-03-23 19:35:52 +0000
committerUlrich Drepper <drepper@redhat.com>2003-03-23 19:35:52 +0000
commitf9ad605a05633387c0bb4048158f047a3c2df014 (patch)
treed81f75502d2d9b0010062aeb08f0da95022ffcfc /sysdeps/unix/make-syscalls.sh
parentc5f95bb9b36dcd3ec4df03af221b06a496aced35 (diff)
Recognize 'E' in first position of the parameter description to denote no error checking. Generate appropriate pseudo asm code.
Diffstat (limited to 'sysdeps/unix/make-syscalls.sh')
-rw-r--r--sysdeps/unix/make-syscalls.sh8
1 files changed, 5 insertions, 3 deletions
diff --git a/sysdeps/unix/make-syscalls.sh b/sysdeps/unix/make-syscalls.sh
index 1d293cf9f2..275875e793 100644
--- a/sysdeps/unix/make-syscalls.sh
+++ b/sysdeps/unix/make-syscalls.sh
@@ -84,8 +84,10 @@ while read file srcfile caller syscall args strong weak; do
esac
cancellable=
+ noerrno=
case $args in
C*) cancellable=-cancel; args=`echo $args | sed 's/C:\?//'`;;
+ E*) noerrno=_NOERRNO; args=`echo $args | sed 's/E:\?//'`;;
esac
# Derive the number of arguments from the argument signature
@@ -149,9 +151,9 @@ shared-only-routines += $file
echo "\
\$(make-target-directory)
(echo '#include <sysdep$cancellable.h>'; \\
- echo 'PSEUDO ($strong, $syscall, $nargs)'; \\
- echo ' ret'; \\
- echo 'PSEUDO_END($strong)'; \\
+ echo 'PSEUDO$noerrno ($strong, $syscall, $nargs)'; \\
+ echo ' ret$noerrno'; \\
+ echo 'PSEUDO_END$noerrno($strong)'; \\
echo 'libc_hidden_def ($strong)'; \\"
;;
esac