aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-06-18 00:00:50 +0000
committerUlrich Drepper <drepper@redhat.com>2003-06-18 00:00:50 +0000
commit1d53508d2c614ca42e93b26e4fd3d2560e92e6e1 (patch)
treea9792b6cb40511ae4d16b45ce40f2828acf9cc3e
parentf23b30e23b93d55dfa6f11e8eaa7f0f9dd492d93 (diff)
downloadglibc-1d53508d2c614ca42e93b26e4fd3d2560e92e6e1.zip
glibc-1d53508d2c614ca42e93b26e4fd3d2560e92e6e1.tar.gz
glibc-1d53508d2c614ca42e93b26e4fd3d2560e92e6e1.tar.bz2
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.
-rw-r--r--nptl/ChangeLog7
-rw-r--r--nptl/Makefile1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h14
3 files changed, 15 insertions, 7 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 9a4670d..b2af00f 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -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.
diff --git a/nptl/Makefile b/nptl/Makefile
index fab063d..349f3ac 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -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
diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
index 4dfbf4b..1f1e7dd 100644
--- a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
+++ b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
@@ -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