aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-01-29 03:25:37 +0000
committerUlrich Drepper <drepper@redhat.com>2003-01-29 03:25:37 +0000
commit1e2f8718598a4d8d8b35d3e505a033f33b242a71 (patch)
tree13af05b62bc92ede588f01635f7f7428c2b0ebb2 /sysdeps/unix/sysv
parent1e49399dbe6abfaa6dcdbe3c8a6004e0efece1c2 (diff)
downloadglibc-1e2f8718598a4d8d8b35d3e505a033f33b242a71.tar
glibc-1e2f8718598a4d8d8b35d3e505a033f33b242a71.tar.gz
glibc-1e2f8718598a4d8d8b35d3e505a033f33b242a71.tar.bz2
glibc-1e2f8718598a4d8d8b35d3e505a033f33b242a71.zip
Update.
(__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
Diffstat (limited to 'sysdeps/unix/sysv')
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c3
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h32
2 files changed, 18 insertions, 17 deletions
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
index 6343c54b2d..16619cddd2 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
@@ -26,7 +26,8 @@
const fenv_t *
__fe_nomask_env (void)
{
- INLINE_SYSCALL (prctl, 2, PR_SET_FPEXC, PR_FP_EXC_PRECISE);
+ INTERNAL_SYSCALL_DECL (err);
+ INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_PRECISE);
return FE_ENABLED_ENV;
}
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h b/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
index c215398995..628c8d9257 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1997, 1998, 1999, 2000, 2001, 2002
+/* Copyright (C) 1992, 1997, 1998, 1999, 2000, 2001, 2002, 2003
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,7 +16,7 @@
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
-
+
/* Alan Modra <amodra@bigpond.net.au> rewrote the INLINE_SYSCALL macro */
#ifndef _LINUX_POWERPC_SYSDEP_H
@@ -72,8 +72,8 @@
/* This version is for kernels that implement system calls that
behave like function calls as far as register saving. */
-#define INLINE_SYSCALL(name, nr, args...) \
- ({ \
+#define INLINE_SYSCALL(name, nr, args...) \
+ ({ \
INTERNAL_SYSCALL_DECL (sc_err); \
long sc_ret = INTERNAL_SYSCALL (name, sc_err, nr, args); \
if (INTERNAL_SYSCALL_ERROR_P (sc_ret, sc_err)) \
@@ -90,8 +90,8 @@
gave back in the non-error (CR0.SO cleared) case, otherwise (CR0.SO set)
the negation of the return value in the kernel gets reverted. */
-# undef INTERNAL_SYSCALL
-# define INTERNAL_SYSCALL(name, err, nr, args...) \
+#undef INTERNAL_SYSCALL
+#define INTERNAL_SYSCALL(name, err, nr, args...) \
({ \
register long r0 __asm__ ("r0"); \
register long r3 __asm__ ("r3"); \
@@ -106,24 +106,24 @@
"mfcr %0\n\t" \
"0:" \
: "=&r" (r0), \
- "=&r" (r3), "=&r" (r4), "=&r" (r5), \
- "=&r" (r6), "=&r" (r7), "=&r" (r8) \
+ "=&r" (r3), "=&r" (r4), "=&r" (r5), \
+ "=&r" (r6), "=&r" (r7), "=&r" (r8) \
: ASM_INPUT_##nr \
- : "r9", "r10", "r11", "r12", \
+ : "r9", "r10", "r11", "r12", \
"cr0", "ctr", "memory"); \
err = r0; \
(int) r3; \
})
-# undef INTERNAL_SYSCALL_DECL
-# define INTERNAL_SYSCALL_DECL(err) long err
-
-# undef INTERNAL_SYSCALL_ERROR_P
-# define INTERNAL_SYSCALL_ERROR_P(val, err) \
+#undef INTERNAL_SYSCALL_DECL
+#define INTERNAL_SYSCALL_DECL(err) long err
+
+#undef INTERNAL_SYSCALL_ERROR_P
+#define INTERNAL_SYSCALL_ERROR_P(val, err) \
(__builtin_expect (err & (1 << 28), 0))
-# undef INTERNAL_SYSCALL_ERRNO
-# define INTERNAL_SYSCALL_ERRNO(val, err) (val)
+#undef INTERNAL_SYSCALL_ERRNO
+#define INTERNAL_SYSCALL_ERRNO(val, err) (val)
#define LOADARGS_0(name, dummy) \
r0 = __NR_##name