linux-stable/arch/s390
Heiko Carstens 4ae803253e s390/bitops: optimize set_bit() for constant values
Since zEC12 we have the interlocked-access facility 2 which allows to
use the instructions ni/oi/xi to update a single byte in storage with
compare-and-swap semantics.
So change set_bit(), clear_bit() and change_bit() to generate such code
instead of a compare-and-swap loop (or using the load-and-* instruction
family), if possible.
This reduces the text segment by yet another 8KB (defconfig).

Alternatively the long displacement variants niy/oiy/xiy could have
been used, but the extended displacement field is usually not needed
and therefore would only increase the size of the text segment again.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2013-10-24 17:16:53 +02:00
..
appldata s390/appldata_net_sum: do not use static data 2013-06-26 21:10:31 +02:00
boot s390: add support for LZ4-compressed kernel 2013-07-26 13:25:19 +02:00
crypto
hypfs Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2013-09-05 08:50:26 -07:00
include s390/bitops: optimize set_bit() for constant values 2013-10-24 17:16:53 +02:00
kernel s390/bitops: optimize set_bit() for constant values 2013-10-24 17:16:53 +02:00
kvm s390/dis: move disassembler function prototypes to proper header file 2013-10-24 17:16:48 +02:00
lib s390/time: correct use of store clock fast 2013-10-22 09:16:40 +02:00
math-emu
mm arch: mm: pass userspace fault flag to generic fault handler 2013-09-12 15:38:01 -07:00
net s390/dis: move disassembler function prototypes to proper header file 2013-10-24 17:16:48 +02:00
oprofile Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2013-09-11 08:36:03 -07:00
pci s390/pci: use virtual memory for iommu bitmap 2013-08-30 08:57:24 +02:00
defconfig s390: update defconfig 2013-09-04 17:19:01 +02:00
Kbuild
Kconfig s390: enable ARCH_USE_CMPXCHG_LOCKREF 2013-09-28 12:46:29 +02:00
Kconfig.debug Kconfig: consolidate CONFIG_DEBUG_STRICT_USER_COPY_CHECKS 2013-04-30 17:04:09 -07:00
Makefile s390: always set -march compiler option 2013-10-24 17:16:44 +02:00