glibc/sysdeps
Stefan Liebler df3a4e104f Add __glibc_unlikely hint in lll_trylock, lll_cond_trylock.
The macros lll_trylock, lll_cond_trylock are extended by an __glibc_unlikely
hint.  Now the trylock macros are based on the same assumption about a
free/busy lock as lll_lock.
With the hint gcc emits code in e.g. pthread_mutex_trylock which does
not use jumps if the lock is free.  Without the hint it had to jump away
if the lock is free.

Tested on s390x, ppc.

ChangeLog:

	* sysdeps/nptl/lowlevellock.h (lll_trylock, lll_cond_trylock):
	Add __glibc_unlikely hint.
2017-02-06 13:46:01 +01:00
..
aarch64 New pthread rwlock that is more scalable. 2017-01-10 11:50:17 +01:00
alpha alpha: Use saturating arithmetic in memchr 2017-02-01 14:39:04 -08:00
arm Fix ARM fpu_control.h for assemblers requiring VFP insn names (bug 21047). 2017-01-19 00:05:34 +00:00
generic Drop GLIBC_TUNABLES for setxid programs when tunables is disabled (bz #21073) 2017-02-02 15:50:24 +05:30
gnu Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
hppa Remove very old libm-test-ulps entries. 2017-01-20 23:58:49 +00:00
i386 Remove i686, x86_64, and powerpc strtok implementations 2017-02-06 10:24:17 -02:00
ia64 Remove very old libm-test-ulps entries. 2017-01-20 23:58:49 +00:00
ieee754 Move wrappers to libm-compat-calls-auto 2017-01-04 16:25:04 -02:00
init_array Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
m68k m68k: fix 64bit atomic ops 2017-02-01 01:32:31 +01:00
mach Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
microblaze Remove very old libm-test-ulps entries. 2017-01-20 23:58:49 +00:00
mips New pthread rwlock that is more scalable. 2017-01-10 11:50:17 +01:00
nacl Bug 20116: Fix use after free in pthread_create() 2017-01-28 19:21:44 -05:00
nios2 New pthread rwlock that is more scalable. 2017-01-10 11:50:17 +01:00
nptl Add __glibc_unlikely hint in lll_trylock, lll_cond_trylock. 2017-02-06 13:46:01 +01:00
posix Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
powerpc Remove i686, x86_64, and powerpc strtok implementations 2017-02-06 10:24:17 -02:00
pthread Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
s390 New pthread rwlock that is more scalable. 2017-01-10 11:50:17 +01:00
sh Remove very old libm-test-ulps entries. 2017-01-20 23:58:49 +00:00
sparc sparc: Remove optimized math routines which cause testsuite failures. 2017-02-03 17:55:25 -08:00
tile tile: Check for pointer add overflow in memchr 2017-01-16 15:44:48 -05:00
unix Consolidate arm and mips posix_fadvise implementations 2017-02-06 10:21:55 -02:00
wordsize-32 Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
wordsize-64 Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
x86 New pthread rwlock that is more scalable. 2017-01-10 11:50:17 +01:00
x86_64 Remove i686, x86_64, and powerpc strtok implementations 2017-02-06 10:24:17 -02:00