aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/x86/Makefile
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2018-10-02 07:51:48 -0700
committerH.J. Lu <hjl.tools@gmail.com>2018-10-02 07:51:57 -0700
commita1ccc0654b4e858022bed10f4fb5d5ab6df58b62 (patch)
tree37f5fec387b51763513493cd5149b71589f77dab /sysdeps/unix/sysv/linux/x86/Makefile
parent0b727ed4d605d9318cb0d323c88abb0d5a441a9b (diff)
downloadglibc-a1ccc0654b4e858022bed10f4fb5d5ab6df58b62.tar
glibc-a1ccc0654b4e858022bed10f4fb5d5ab6df58b62.tar.gz
glibc-a1ccc0654b4e858022bed10f4fb5d5ab6df58b62.tar.bz2
glibc-a1ccc0654b4e858022bed10f4fb5d5ab6df58b62.zip
x86: Use RTM intrinsics in pthread mutex lock elision
Since RTM intrinsics are supported in GCC 4.9, we can use them in pthread mutex lock elision. * sysdeps/unix/sysv/linux/x86/Makefile (CFLAGS-elision-lock.c): Add -mrtm. (CFLAGS-elision-unlock.c): Likewise. (CFLAGS-elision-timed.c): Likewise. (CFLAGS-elision-trylock.c): Likewise. * sysdeps/unix/sysv/linux/x86/hle.h: Rewritten.
Diffstat (limited to 'sysdeps/unix/sysv/linux/x86/Makefile')
-rw-r--r--sysdeps/unix/sysv/linux/x86/Makefile4
1 files changed, 4 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/x86/Makefile b/sysdeps/unix/sysv/linux/x86/Makefile
index 7dc4e61756..02ca36c6d2 100644
--- a/sysdeps/unix/sysv/linux/x86/Makefile
+++ b/sysdeps/unix/sysv/linux/x86/Makefile
@@ -14,6 +14,10 @@ endif
ifeq ($(subdir),nptl)
libpthread-sysdep_routines += elision-lock elision-unlock elision-timed \
elision-trylock
+CFLAGS-elision-lock.c += -mrtm
+CFLAGS-elision-unlock.c += -mrtm
+CFLAGS-elision-timed.c += -mrtm
+CFLAGS-elision-trylock.c += -mrtm
endif
ifeq ($(subdir),elf)