linux/arch/s390/include/asm
Heiko Carstens 04efc3be76 [S390] convert/optimize csum_fold() to C
In the meantime gcc generates better code than the old inline
assemblies do. Original inline assembly results in:

lr	%r1,%r2
sr	%r3,%r3
lr	%r2,%r1
srdl	%r2,16
alr	%r2,%r3
alr	%r1,%r2
srl	%r1,16
xilf	%r1,65535
llghr	%r2,%r1
br	%r14

Out of the C code gcc generates this:

rll	%r1,%r2,16
ar	%r1,%r2
srl	%r1,16
xilf	%r1,65535
llghr	%r2,%r1
br	%r14

In addition we don't have any static register allocations anymore and
gcc is free to shuffle instructions around for better pipeline usage.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2009-09-11 10:29:43 +02:00
..
airq.h
appldata.h
atomic.h [S390] add generic atomic64 support for 31 bit 2009-07-07 16:37:54 +02:00
auxvec.h [S390] introduce vdso on s390 2008-12-25 13:38:55 +01:00
bitops.h [S390] bitops: remove likely annotations 2009-03-26 15:24:23 +01:00
bitsperlong.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
bug.h [S390] remove warnings with functions ending in BUG 2008-12-25 13:39:12 +01:00
bugs.h
byteorder.h byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
cache.h
cacheflush.h
ccwdev.h [S390] cio: force console function 2009-06-16 10:31:11 +02:00
ccwgroup.h [S390] pm: ccwgroup bus power management callbacks 2009-06-16 10:31:08 +02:00
checksum.h [S390] convert/optimize csum_fold() to C 2009-09-11 10:29:43 +02:00
chpid.h [S390] types: add/fix types.h include in header files 2009-01-09 12:15:06 +01:00
chsc.h [S390] cio: move scsw helper functions to header file 2009-09-11 10:29:36 +02:00
cio.h [S390] cio: move scsw helper functions to header file 2009-09-11 10:29:36 +02:00
cmb.h [S390] types: add/fix types.h include in header files 2009-01-09 12:15:06 +01:00
compat.h [S390] implement is_compat_task 2009-06-12 10:27:30 +02:00
cpcmd.h
cpuid.h [S390] s390: move machine flags to lowcore 2009-04-14 15:37:21 +02:00
cputime.h [S390] lockless idle time accounting 2009-06-22 12:08:23 +02:00
crw.h [S390] split/move machine check handler code 2009-03-26 15:24:10 +01:00
current.h
dasd.h [S390] dasd: add large volume support 2009-03-26 15:24:05 +01:00
debug.h [S390] s390: remove DEBUG_MALLOC 2009-06-22 12:08:18 +02:00
delay.h
device.h
diag.h
div64.h
dma.h
ebcdic.h
elf.h [S390] personality: fix personality loss on execve 2009-01-23 16:40:28 +01:00
emergency-restart.h
errno.h
etr.h
extmem.h
fb.h
fcntl.h
fcx.h [S390] cio: update sac values 2008-12-25 13:39:06 +01:00
ftrace.h [S390] ftrace: add function graph tracer support 2009-06-12 10:27:39 +02:00
futex.h
hardirq.h
hugetlb.h
idals.h [S390] dasd: add High Performance FICON support 2009-03-26 15:24:05 +01:00
io.h
ioctl.h
ioctls.h
ipcbuf.h
ipl.h
irq_regs.h
irq.h
irqflags.h
isc.h [S390] zcrypt: Use of Thin Interrupts 2008-12-25 13:38:57 +01:00
itcw.h
Kbuild byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
kdebug.h
kexec.h
kmap_types.h kmap_types: make most arches use generic header file 2009-06-16 19:47:51 -07:00
kprobes.h
kvm_host.h KVM: s390: Allow stfle instruction in the guest 2009-06-28 14:10:30 +03:00
kvm_para.h
kvm_virtio.h virtio: use KVM_S390_VIRTIO_RING_ALIGN instead of relying on pagesize 2008-12-30 09:26:03 +10:30
kvm.h KVM: New guest debug interface 2009-03-24 11:02:49 +02:00
linkage.h
local.h
lowcore.h [S390] ftrace: add dynamic ftrace support 2009-06-12 10:27:38 +02:00
mathemu.h
mman.h asm-generic: rename termios.h, signal.h and mman.h 2009-06-11 21:01:52 +02:00
mmu_context.h [S390] cpumask: use mm_cpumask() wrapper 2009-03-26 15:24:34 +01:00
mmu.h [S390] introduce vdso on s390 2008-12-25 13:38:55 +01:00
module.h
monwriter.h
msgbuf.h
mutex.h
nmi.h [S390] split/move machine check handler code 2009-03-26 15:24:10 +01:00
page.h asm-generic: rename page.h and uaccess.h 2009-06-11 21:02:17 +02:00
param.h
pci.h
percpu.h
perf_counter.h [S390] perf_counter build fix 2009-07-07 16:37:52 +02:00
pgalloc.h [S390] clear_table inline assembly contraints 2008-12-25 13:39:15 +01:00
pgtable.h [S390] vmalloc: add vmalloc kernel parameter support 2009-06-12 10:27:33 +02:00
poll.h
posix_types.h [S390] asm-s390/posix_types.h: drop __USE_ALL usage 2009-01-09 12:15:04 +01:00
processor.h [S390] s390: move machine flags to lowcore 2009-04-14 15:37:21 +02:00
ptrace.h [S390] s390: move machine flags to lowcore 2009-04-14 15:37:21 +02:00
qdio.h [S390] qdio: Sanitize do_QDIO sanity checks 2009-06-22 12:08:21 +02:00
qeth.h [S390] types: add/fix types.h include in header files 2009-01-09 12:15:06 +01:00
reset.h
resource.h
rwsem.h
s390_ext.h
scatterlist.h
schid.h [S390] types: add/fix types.h include in header files 2009-01-09 12:15:06 +01:00
sclp.h
scsw.h [S390] cio: move scsw helper functions to header file 2009-09-11 10:29:36 +02:00
seccomp.h [S390] secure computing arch backend 2009-06-12 10:27:31 +02:00
sections.h
segment.h
sembuf.h
setup.h [S390] s390: move machine flags to lowcore 2009-04-14 15:37:21 +02:00
sfp-machine.h
sfp-util.h
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h asm-generic: rename termios.h, signal.h and mman.h 2009-06-11 21:01:52 +02:00
sigp.h [S390] convert s390 to generic IPI infrastructure 2008-12-25 13:38:56 +01:00
smp.h Merge branch 'ipi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-04-03 17:33:30 -07:00
socket.h net: new user space API for time stamping of incoming and outgoing packets 2009-02-15 22:43:33 -08:00
sockios.h
sparsemem.h
spinlock_types.h
spinlock.h [S390] implement interrupt-enabling rwlocks 2009-06-12 10:27:29 +02:00
stat.h
statfs.h
string.h [S390] use compiler builtin versions of strlen/strcpy/strcat 2009-03-26 15:24:24 +01:00
suspend.h [S390] s390: hibernation support for s390 2009-06-16 10:31:22 +02:00
swab.h [S390] types: add/fix types.h include in header files 2009-01-09 12:15:06 +01:00
syscall.h [S390] ftrace: add system call tracer support 2009-06-12 10:27:39 +02:00
sysinfo.h [S390] Fix hypervisor detection for KVM 2009-03-26 15:24:09 +01:00
system.h [S390] s390: hibernation support for s390 2009-06-16 10:31:22 +02:00
tape390.h
termbits.h
termios.h asm-generic: rename termios.h, signal.h and mman.h 2009-06-11 21:01:52 +02:00
thread_info.h sched: INIT_PREEMPT_COUNT 2009-07-10 14:24:05 -07:00
timer.h [S390] extend virtual timer interface by mod_virt_timer_periodic 2009-04-14 15:37:23 +02:00
timex.h [S390] introduce get_clock_monotonic 2009-09-11 10:29:42 +02:00
tlb.h mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
tlbflush.h [S390] cpumask: use mm_cpumask() wrapper 2009-03-26 15:24:34 +01:00
todclk.h
topology.h [S390] cpumask: remove cpu_coregroup_map 2009-03-26 15:24:32 +01:00
types.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
uaccess.h [S390] uaccess: use might_fault() instead of might_sleep() 2009-06-12 10:27:33 +02:00
ucontext.h
unaligned.h
unistd.h [S390] wire up sys_perf_counter_open 2009-06-12 10:27:40 +02:00
user.h
vdso.h [PATCH] fast vdso implementation for CLOCK_THREAD_CPUTIME_ID 2008-12-31 15:11:49 +01:00
vtoc.h [S390] dasd: add large volume support 2009-03-26 15:24:05 +01:00
xor.h
zcrypt.h