mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-22 10:50:07 +00:00
Update.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (lll_mutex_lock): Add ax to clobber list. (lll_mutex_cond_lock): Likewise. (lll_mutex_unlock): Likewise. (lll_lock): Likewise. (lll_unlock): Likewise.
This commit is contained in:
parent
f23b30e23b
commit
1d53508d2c
@ -1,5 +1,12 @@
|
||||
2003-06-17 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (lll_mutex_lock):
|
||||
Add ax to clobber list.
|
||||
(lll_mutex_cond_lock): Likewise.
|
||||
(lll_mutex_unlock): Likewise.
|
||||
(lll_lock): Likewise.
|
||||
(lll_unlock): Likewise.
|
||||
|
||||
* Makefile: Add rules to build and run tst-cancel18 and tst-cancelx18.
|
||||
* tst-cancel18.c: New file.
|
||||
* tst-cancelx18.c: New file.
|
||||
|
@ -364,6 +364,7 @@ CFLAGS-tst-cancelx14.c += -fexceptions
|
||||
CFLAGS-tst-cancelx15.c += -fexceptions
|
||||
CFLAGS-tst-cancelx16.c += -fexceptions
|
||||
CFLAGS-tst-cancelx17.c += -fexceptions
|
||||
CFLAGS-tst-cancelx18.c += -fexceptions
|
||||
CFLAGS-tst-cleanupx0.c += -fexceptions -fasynchronous-unwind-tables
|
||||
CFLAGS-tst-cleanupx1.c += -fexceptions -fasynchronous-unwind-tables
|
||||
CFLAGS-tst-cleanupx2.c += -fexceptions
|
||||
|
@ -100,7 +100,7 @@ extern int __lll_mutex_unlock_wait (int *__futex) attribute_hidden;
|
||||
"2:" \
|
||||
: "=S" (ignore1), "=&D" (ignore2), "=m" (futex) \
|
||||
: "0" (1), "2" (futex) \
|
||||
: "cx", "r11", "cc", "memory"); })
|
||||
: "ax", "cx", "r11", "cc", "memory"); })
|
||||
|
||||
|
||||
#define lll_mutex_cond_lock(futex) \
|
||||
@ -118,7 +118,7 @@ extern int __lll_mutex_unlock_wait (int *__futex) attribute_hidden;
|
||||
"2:" \
|
||||
: "=S" (ignore1), "=&D" (ignore2), "=m" (futex) \
|
||||
: "0" (2), "2" (futex) \
|
||||
: "cx", "r11", "cc", "memory"); })
|
||||
: "ax", "cx", "r11", "cc", "memory"); })
|
||||
|
||||
|
||||
#define lll_mutex_timedlock(futex, timeout) \
|
||||
@ -156,7 +156,7 @@ extern int __lll_mutex_unlock_wait (int *__futex) attribute_hidden;
|
||||
"2:" \
|
||||
: "=m" (futex), "=&D" (ignore) \
|
||||
: "0" (futex) \
|
||||
: "cx", "r11", "cc", "memory"); })
|
||||
: "ax", "cx", "r11", "cc", "memory"); })
|
||||
|
||||
|
||||
#define lll_mutex_islocked(futex) \
|
||||
@ -209,7 +209,7 @@ extern int lll_unlock_wake_cb (int *__futex) attribute_hidden;
|
||||
"2:" \
|
||||
: "=S" (ignore1), "=&D" (ignore2), "=m" (futex) \
|
||||
: "0" (-1), "2" (futex) \
|
||||
: "cx", "r11", "cc", "memory"); })
|
||||
: "ax", "cx", "r11", "cc", "memory"); })
|
||||
|
||||
|
||||
# define lll_unlock(futex) \
|
||||
@ -226,7 +226,7 @@ extern int lll_unlock_wake_cb (int *__futex) attribute_hidden;
|
||||
"2:" \
|
||||
: "=m" (futex), "=&D" (ignore) \
|
||||
: "0" (futex) \
|
||||
: "cx", "r11", "cc", "memory"); })
|
||||
: "ax", "cx", "r11", "cc", "memory"); })
|
||||
#else
|
||||
/* Special versions of the macros for use in libc itself. They avoid
|
||||
the lock prefix when the thread library is not used.
|
||||
@ -262,7 +262,7 @@ extern int lll_unlock_wake_cb (int *__futex) attribute_hidden;
|
||||
"2:" \
|
||||
: "=S" (ignore1), "=&D" (ignore2), "=m" (futex) \
|
||||
: "0" (-1), "2" (futex) \
|
||||
: "cx", "r11", "cc", "memory"); })
|
||||
: "ax", "cx", "r11", "cc", "memory"); })
|
||||
|
||||
|
||||
# define lll_unlock(futex) \
|
||||
@ -282,7 +282,7 @@ extern int lll_unlock_wake_cb (int *__futex) attribute_hidden;
|
||||
"2:" \
|
||||
: "=m" (futex), "=&D" (ignore) \
|
||||
: "0" (futex) \
|
||||
: "cx", "r11", "cc", "memory"); })
|
||||
: "ax", "cx", "r11", "cc", "memory"); })
|
||||
#endif
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user