2002-09-29 Jakub Jelinek <jakub@redhat.com>
authorroland <roland>
Sun, 29 Sep 2002 11:31:22 +0000 (11:31 +0000)
committerroland <roland>
Sun, 29 Sep 2002 11:31:22 +0000 (11:31 +0000)
* sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall0): Make asm
volatile.
(inline_syscall1, inline_syscall2, inline_syscall3, inline_syscall4,
inline_syscall5, inline_syscall6): Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (INLINE_SYSCALL):
Likewise.

sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
sysdeps/unix/sysv/linux/sparc/sysdep.h

index 524a32b..0559210 100644 (file)
   ({                                           \
     long ret, err;                             \
     LOADARGS_##nr(name, args);                 \
-    __asm__ ("sc\n\t"                          \
-            "mfcr      %1\n\t"                 \
-            : "=r" (r3), "=r" (err)            \
-            : ASM_INPUT_##nr                   \
-            : "cc", "memory");                 \
+    __asm __volatile ("sc\n\t"                 \
+                     "mfcr     %1\n\t"         \
+                     : "=r" (r3), "=r" (err)   \
+                     : ASM_INPUT_##nr          \
+                     : "cc", "memory");        \
     ret = r3;                                  \
     if (err & 1 << 28)                         \
       {                                                \
index 8e43a39..4031959 100644 (file)
     DECLARGS_##nr;                             \
     long ret, err;                             \
     LOADARGS_##nr(name, args);                 \
-    __asm__ ("sc\n\t"                          \
-            "mfcr      %1\n\t"                 \
-            : "=r" (r3), "=r" (err)            \
-            : ASM_INPUT_##nr                   \
-            : "cc", "memory");                 \
+    __asm __volatile ("sc\n\t"                 \
+                     "mfcr     %1\n\t"         \
+                     : "=r" (r3), "=r" (err)   \
+                     : ASM_INPUT_##nr          \
+                     : "cc", "memory");        \
     ret = r3;                                  \
     if (err & 1 << 28)                         \
       {                                                \
     register long r8 __asm__ ("r8");                           \
     long ret, err;                                             \
     LOADARGS_##nr(name, args);                                 \
-    __asm__ ("sc\n\t"                                          \
-            "mfcr      %7\n\t"                                 \
-            : "=r" (r0), "=r" (r3), "=r" (r4), "=r" (r5),      \
-              "=r" (r6), "=r" (r7), "=r" (r8), "=r" (err)      \
-            : ASM_INPUT_##nr                                   \
-            : "r9", "r10", "r11", "r12",                       \
-              "fr0", "fr1", "fr2", "fr3",                      \
-              "fr4", "fr5", "fr6", "fr7",                      \
-              "fr8", "fr9", "fr10", "fr11",                    \
-              "fr12", "fr13",                                  \
-              "ctr", "lr",                                     \
-              "cr0", "cr1", "cr5", "cr6", "cr7", "memory");    \
+    __asm __volatile ("sc\n\t"                                 \
+                     "mfcr     %7\n\t"                         \
+                     : "=r" (r0), "=r" (r3), "=r" (r4),        \
+                       "=r" (r5), "=r" (r6), "=r" (r7),        \
+                       "=r" (r8), "=r" (err)                   \
+                     : ASM_INPUT_##nr                          \
+                     : "r9", "r10", "r11", "r12",              \
+                       "fr0", "fr1", "fr2", "fr3",             \
+                       "fr4", "fr5", "fr6", "fr7",             \
+                       "fr8", "fr9", "fr10", "fr11",           \
+                       "fr12", "fr13",                         \
+                       "ctr", "lr",                            \
+                       "cr0", "cr1", "cr5", "cr6", "cr7",      \
+                       "memory");                              \
     ret = r3;                                                  \
     if (err & 1 << 28)                                         \
       {                                                                \
index f128f4e..cf59f12 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Jakub Jelinek <jakub@redhat.com>, 2000.
 
@@ -27,9 +27,9 @@
 ({                                                                     \
        register long __o0 __asm__ ("o0");                              \
        register long __g1 __asm__ ("g1") = __NR_##name;                \
-       __asm__ (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) :          \
-                "0" (__g1) :                                           \
-                __SYSCALL_CLOBBERS);                                   \
+       __asm __volatile (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) : \
+                         "0" (__g1) :                                  \
+                         __SYSCALL_CLOBBERS);                          \
        __o0;                                                           \
 })
 
@@ -37,9 +37,9 @@
 ({                                                                     \
        register long __o0 __asm__ ("o0") = (long)(arg1);               \
        register long __g1 __asm__ ("g1") = __NR_##name;                \
-       __asm__ (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) :          \
-                "0" (__g1), "1" (__o0) :                               \
-                __SYSCALL_CLOBBERS);                                   \
+       __asm __volatile (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) : \
+                         "0" (__g1), "1" (__o0) :                      \
+                         __SYSCALL_CLOBBERS);                          \
        __o0;                                                           \
 })
 
@@ -48,9 +48,9 @@
        register long __o0 __asm__ ("o0") = (long)(arg1);               \
        register long __o1 __asm__ ("o1") = (long)(arg2);               \
        register long __g1 __asm__ ("g1") = __NR_##name;                \
-       __asm__ (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) :          \
-                "0" (__g1), "1" (__o0), "r" (__o1) :                   \
-                __SYSCALL_CLOBBERS);                                   \
+       __asm __volatile (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) : \
+                         "0" (__g1), "1" (__o0), "r" (__o1) :          \
+                         __SYSCALL_CLOBBERS);                          \
        __o0;                                                           \
 })
 
        register long __o1 __asm__ ("o1") = (long)(arg2);               \
        register long __o2 __asm__ ("o2") = (long)(arg3);               \
        register long __g1 __asm__ ("g1") = __NR_##name;                \
-       __asm__ (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) :          \
-                "0" (__g1), "1" (__o0), "r" (__o1), "r" (__o2) :       \
-                __SYSCALL_CLOBBERS);                                   \
+       __asm __volatile (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) : \
+                         "0" (__g1), "1" (__o0), "r" (__o1),           \
+                         "r" (__o2) :                                  \
+                         __SYSCALL_CLOBBERS);                          \
        __o0;                                                           \
 })
 
        register long __o2 __asm__ ("o2") = (long)(arg3);               \
        register long __o3 __asm__ ("o3") = (long)(arg4);               \
        register long __g1 __asm__ ("g1") = __NR_##name;                \
-       __asm__ (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) :          \
-                "0" (__g1), "1" (__o0), "r" (__o1), "r" (__o2),        \
-                "r" (__o3) :                                           \
-                __SYSCALL_CLOBBERS);                                   \
+       __asm __volatile (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) : \
+                         "0" (__g1), "1" (__o0), "r" (__o1),           \
+                         "r" (__o2), "r" (__o3) :                      \
+                         __SYSCALL_CLOBBERS);                          \
        __o0;                                                           \
 })
 
        register long __o3 __asm__ ("o3") = (long)(arg4);               \
        register long __o4 __asm__ ("o4") = (long)(arg5);               \
        register long __g1 __asm__ ("g1") = __NR_##name;                \
-       __asm__ (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) :          \
-                "0" (__g1), "1" (__o0), "r" (__o1), "r" (__o2),        \
-                "r" (__o3), "r" (__o4) :                               \
-                __SYSCALL_CLOBBERS);                                   \
+       __asm __volatile (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) : \
+                         "0" (__g1), "1" (__o0), "r" (__o1),           \
+                         "r" (__o2), "r" (__o3), "r" (__o4) :          \
+                         __SYSCALL_CLOBBERS);                          \
        __o0;                                                           \
 })
 
        register long __o4 __asm__ ("o4") = (long)(arg5);               \
        register long __o5 __asm__ ("o5") = (long)(arg6);               \
        register long __g1 __asm__ ("g1") = __NR_##name;                \
-       __asm__ (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) :          \
-                "0" (__g1), "1" (__o0), "r" (__o1), "r" (__o2),        \
-                "r" (__o3), "r" (__o4), "r" (__o5) :                   \
-                __SYSCALL_CLOBBERS);                                   \
+       __asm __volatile (__SYSCALL_STRING : "=r" (__g1), "=r" (__o0) : \
+                         "0" (__g1), "1" (__o0), "r" (__o1),           \
+                         "r" (__o2), "r" (__o3), "r" (__o4),           \
+                         "r" (__o5) :                                  \
+                         __SYSCALL_CLOBBERS);                          \
        __o0;                                                           \
 })