about summary refs log tree commit diff
path: root/ChangeLog
diff options
context:
space:
mode:
authorAndi Kleen <ak@linux.intel.com>2014-03-17 05:48:28 -0700
committerAndi Kleen <ak@linux.intel.com>2014-06-13 12:49:03 -0700
commita832bdd36203fcb37fa5ad25200ef3c1ae205efe (patch)
tree045064e8ee765c267caab8a76a0a014c39acb787 /ChangeLog
parent995a46bbfba9964e328e3947130919d8bd3cd62a (diff)
downloadglibc-a832bdd36203fcb37fa5ad25200ef3c1ae205efe.tar.gz
glibc-a832bdd36203fcb37fa5ad25200ef3c1ae205efe.tar.xz
glibc-a832bdd36203fcb37fa5ad25200ef3c1ae205efe.zip
Add a fast path for C rd/wrlock v2
One difference of the C versions to the assembler wr/rdlock
is that the C compiler saves some registers which are unnecessary
for the fast path in the prologue of the functions. Split the
uncontended fast path out into a separate function. Only when contention is
detected is the full featured function called. This makes
the fast path code (nearly) identical to the assembler version,
and gives uncontended performance within a few cycles.

v2: Rename some functions and add space.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog7
1 files changed, 7 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index d5474af375..c2de6f8a05 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2014-06-13  Andi Kleen  <ak@linux.intel.com>
+
+	* nptl/pthread_rwlock_rdlock (__pthread_rwlock_rdlock):
+	Split into __do_pthread_rwlock_rdlock and __pthread_rwlock_rdlock.
+	* nptl/pthread_rwlock_wrlock (__pthread_rwlock_wrlock):
+	Split into __do_pthread_rwlock_wrlock and __pthread_wrlock_rdlock.
+
 2014-06-13  Meador Inge  <meadori@codesourcery.com>
 
 	[BZ #16996]