]> sourceware.org Git - glibc.git/commitdiff
* sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h: Propagate oldvalue...
authorRichard Henderson <rth@redhat.com>
Sat, 13 Mar 2004 05:29:24 +0000 (05:29 +0000)
committerRichard Henderson <rth@redhat.com>
Sat, 13 Mar 2004 05:29:24 +0000 (05:29 +0000)
2004-03-12  Richard Henderson  <rth@redhat.com>

        * sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h: Propagate
        oldvalue from CENABLE to CDISABLE.

nptl/ChangeLog
nptl/sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h

index 755d6fee3d262444cf837dea2b4e6246e4b4405a..91b8205366a038e4008c148651ced1f5cc44b0a6 100644 (file)
@@ -1,3 +1,8 @@
+2004-03-12  Richard Henderson  <rth@redhat.com>
+
+        * sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h: Propagate
+        oldvalue from CENABLE to CDISABLE.
+
 2004-03-12  Ulrich Drepper  <drepper@redhat.com>
 
        * sysdeps/unix/sysv/linux/bits/local_lim.h: Define HOST_NAME_MAX.
index 3b08b22c1a84453840d36b3f287897b1d218ac9d..794d7fc442050bd1b639ef7fd6f3852bb20ef765 100644 (file)
@@ -63,9 +63,14 @@ __LABEL($pseudo_cancel)                                              \
        SAVE_ARGS_##args;                                       \
        CENABLE;                                                \
        LOAD_ARGS_##args;                                       \
+       /* Save the CENABLE return value in RA.  That register  \
+          is preserved across syscall and the real return      \
+          address is saved on the stack.  */                   \
+       mov     v0, ra;                                         \
        lda     v0, SYS_ify(syscall_name);                      \
        call_pal PAL_callsys;                                   \
        stq     v0, 8(sp);                                      \
+       mov     ra, a0;                                         \
        bne     a3, $multi_error;                               \
        CDISABLE;                                               \
        ldq     ra, 0(sp);                                      \
This page took 0.059315 seconds and 5 git commands to generate.