powerpc: Enforce compiler barriers on hardware transactions
commit42bf1c897170ff951c7fd0ee9da25f97ff787396
authorTulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
Mon, 28 Dec 2015 14:24:43 +0000 (28 12:24 -0200)
committerTulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
Fri, 8 Jan 2016 19:47:33 +0000 (8 17:47 -0200)
tree3e69cd2d5201944482407b86b4854fe75ab34f12
parentbc49a7afd38c1bd00f0ad9fd6592a5959d5ba72e
powerpc: Enforce compiler barriers on hardware transactions

Work around a GCC behavior with hardware transactional memory built-ins.
GCC doesn't treat the PowerPC transactional built-ins as compiler
barriers, moving instructions past the transaction boundaries and
altering their atomicity.
ChangeLog
sysdeps/powerpc/nptl/elide.h
sysdeps/powerpc/sysdep.h
sysdeps/unix/sysv/linux/powerpc/elision-lock.c
sysdeps/unix/sysv/linux/powerpc/elision-trylock.c
sysdeps/unix/sysv/linux/powerpc/elision-unlock.c
sysdeps/unix/sysv/linux/powerpc/htm.h