(pthread_barrier_wait): Don't save, load, and restore %esi for last thread.
[kopensolaris-gnu/glibc.git] / nptl / sysdeps / unix / sysv / linux / raise.c
index 009f32a..24a00b1 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -31,9 +31,17 @@ raise (sig)
   pid_t selftid = pd->tid;
   if (selftid == 0)
     {
+      /* This system call is not supposed to fail.  */
+#ifdef INTERNAL_SYSCALL
+      INTERNAL_SYSCALL_DECL (err);
+      selftid = INTERNAL_SYSCALL (gettid, err, 0);
+#else
       selftid = INLINE_SYSCALL (gettid, 0);
+#endif
       THREAD_SETMEM (pd, tid, selftid);
     }
 
   return INLINE_SYSCALL (tkill, 2, selftid, sig);
 }
+libc_hidden_def (raise)
+weak_alias (raise, gsignal)