aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorDominik Vogt <vogt@linux.vnet.ibm.com>2014-05-09 16:58:46 +0200
committerAndreas Krebbel <krebbel@linux.vnet.ibm.com>2014-05-09 16:58:46 +0200
commit5a414ff70c3a45e52b5f5c0741bd459a84cf56b8 (patch)
tree036ad6a707ea587149cb057f3e41b7bdd086cbdd /ChangeLog
parentf63c86fed0ddf38f53de486c5ec537455c00bd52 (diff)
downloadglibc-5a414ff70c3a45e52b5f5c0741bd459a84cf56b8.tar
glibc-5a414ff70c3a45e52b5f5c0741bd459a84cf56b8.tar.gz
glibc-5a414ff70c3a45e52b5f5c0741bd459a84cf56b8.tar.bz2
glibc-5a414ff70c3a45e52b5f5c0741bd459a84cf56b8.zip
S/390: Port of lock elision to System/z
Added support for TX lock elision of pthread mutexes on s390 and s390x. This may improve lock scaling of existing programs on TX capable systems. The lock elision code is only built with --enable-lock-elision=yes and then requires a GCC version supporting the TX builtins. With lock elision default mutexes are elided via __builtin_tbegin, if the cpu supports transactions. By default lock elision is not enabled and the elision code is not built.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog35
1 files changed, 35 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index cd9dec29c9..a64ca9f269 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,38 @@
+2014-05-09 Dominik Vogt <vogt@linux.vnet.ibm.com>
+ Stefan Liebler <stli@linux.vnet.ibm.com>
+
+ * config.make.in (enable-lock-elision): New Makefile variable.
+ * configure.ac: Likewise.
+ * configure: Regenerate.
+ * sysdeps/s390/configure.ac:
+ Add check for gcc transactions support.
+ * sysdeps/s390/configure: Regenerate.
+ * nptl/sysdeps/unix/sysv/linux/s390/Makefile: New file.
+ Build elision files if enabled.
+ * nptl/sysdeps/unix/sysv/linux/s390/elision-conf.c: New file.
+ Add lock elision support for s390.
+ * nptl/sysdeps/unix/sysv/linux/s390/elision-conf.h: Likewise.
+ * nptl/sysdeps/unix/sysv/linux/s390/elision-lock.c: Likewise.
+ * nptl/sysdeps/unix/sysv/linux/s390/elision-timed.c: Likewise.
+ * nptl/sysdeps/unix/sysv/linux/s390/elision-trylock.c: Likewise.
+ * nptl/sysdeps/unix/sysv/linux/s390/elision-unlock.c: Likewise.
+ * nptl/sysdeps/unix/sysv/linux/s390/force-elision.h: Likewise.
+ * nptl/sysdeps/unix/sysv/linux/s390/pthread_mutex_cond_lock.c:
+ Likewise.
+ * nptl/sysdeps/unix/sysv/linux/s390/pthread_mutex_lock.c:
+ Likewise.
+ * nptl/sysdeps/unix/sysv/linux/s390/pthread_mutex_timedlock.c:
+ Likewise.
+ * nptl/sysdeps/unix/sysv/linux/s390/pthread_mutex_trylock.c:
+ Likewise.
+ * nptl/sysdeps/unix/sysv/linux/s390/lowlevellock.h:
+ (__lll_timedlock_elision, __lll_lock_elision)
+ (__lll_unlock_elision, __lll_trylock_elision)
+ (lll_timedlock_elision, lll_lock_elision)
+ (lll_unlock_elision, lll_trylock_elision): Add.
+ * nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h
+ (pthread_mutex_t): Add lock elision support for s390.
+
2014-05-09 Will Newton <will.newton@linaro.org>
* sysdeps/arm/armv7/strcmp.S: New file.