linux_dsm_epyc7002/arch/s390/include/uapi/asm
Heiko Carstens 3cb8f11c5d s390: use generic uapi/asm/swab.h
clang doesn't like s390 specific inline assembler constraints. These
are present in our arch specific uapi/asm/swab.h which again is
required by some ebpf test cases.

For current compiler versions the generic swab.h already makes use of
gcc's builtin functions. Therefore we can simply remove our own header
file and use the generic one.

This will generate worse code if used with compilers before gcc 4.8,
which has no __builtin_bswap16(); or before gcc v4.4, which has no
__builtin_bswap[32|64](). For these cases a C implementation fallback
would be used which generates more code, but is still correct (170KB
extra code for gcc 4.3 with performance_defconfig).

However given that we need (and want) to get rid of the inline
assemblies anyway in order to be able to use clang, the above is just
a minor drawback if old gcc compilers are used.

With current compilers there is close to zero difference, except for
three btrfs bit functions which generate more out-of-line code. The
generated code looks still correct and also uses the s390 specific
byteswap instructions.

Reported-and-tested-by: Thomas Richter <tmricht@linux.vnet.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2017-08-03 13:16:27 +02:00
..
auxvec.h s390: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO 2016-07-31 09:28:09 -04:00
bitsperlong.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
byteorder.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
chpid.h s390/chpid: make headers usable (again) 2012-10-18 17:50:07 +02:00
chsc.h s390/cio: Introduce on-close CHSC IOCTLs 2013-06-26 21:10:12 +02:00
clp.h s390/pci: add ioctl interface for CLP 2016-03-07 16:54:32 +01:00
cmb.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
dasd.h s390/dasd: Add new ioctl BIODASDCHECKFMT 2016-04-15 18:16:39 +02:00
debug.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
guarded_storage.h s390: add a system call for guarded storage 2017-03-22 08:14:25 +01:00
hypfs.h s390/hypfs: Add diagnose 0c support 2015-02-10 16:38:58 +01:00
ioctls.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
ipcbuf.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
Kbuild s390: use generic uapi/asm/swab.h 2017-08-03 13:16:27 +02:00
kvm_para.h s390,uapi: do not use uapi/asm-generic/kvm_para.h 2012-10-19 11:07:18 +02:00
kvm_perf.h perf kvm: Add stat support on s390 2014-07-16 17:57:33 -03:00
kvm_virtio.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
kvm.h KVM: S390: add new group for flic 2017-06-22 12:41:07 +02:00
monwriter.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
msgbuf.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
pkey.h s390/pkey: Introduce new API for secure key verification 2017-03-22 08:29:13 +01:00
posix_types.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
ptrace.h s390/ptrace: clarify bits in the per_struct 2016-06-28 13:11:55 +02:00
qeth.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
schid.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
sclp_ctl.h s390/sclp: Add SCLP character device driver 2013-06-26 21:10:13 +02:00
sembuf.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
setup.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
shmbuf.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
sie.h KVM: s390: Add sthyi emulation 2016-06-10 12:07:12 +02:00
sigcontext.h s390: add support for vector extension 2014-10-09 09:14:13 +02:00
siginfo.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
signal.h unify SS_ONSTACK/SS_DISABLE definitions 2012-12-19 18:07:39 -05:00
socket.h net: introduce SO_PEERGROUPS getsockopt 2017-06-21 11:38:41 -04:00
stat.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
statfs.h s390/uapi: fix struct statfs64 definition 2014-01-22 14:02:18 +01:00
tape390.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
termios.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
types.h s390: add support for vector extension 2014-10-09 09:14:13 +02:00
ucontext.h s390: add support for vector extension 2014-10-09 09:14:13 +02:00
unistd.h s390: add a system call for guarded storage 2017-03-22 08:14:25 +01:00
virtio-ccw.h KVM: s390: Export virtio-ccw api. 2013-03-05 19:12:10 -03:00
vtoc.h UAPI: (Scripted) Disintegrate arch/s390/include/asm 2012-10-09 09:47:31 +01:00
zcrypt.h s390/zcrypt: Introduce new zcrypt device status API 2016-12-14 16:33:38 +01:00