OpenCloudOS-Kernel/arch/powerpc/lib
Anton Blanchard ef1313deaf powerpc: Add VMX optimised xor for RAID5
Add a VMX optimised xor, used primarily for RAID5. On a POWER7 blade
this is a decent win:

   32regs    : 17932.800 MB/sec
   altivec   : 19724.800 MB/sec

The bigger gain is when the same test is run in SMT4 mode, as it
would if there was a lot of work going on:

   8regs     :  8377.600 MB/sec
   altivec   : 15801.600 MB/sec

I tested this against an array created without the patch, and also
verified it worked as expected on a little endian kernel.

[ Fix !CONFIG_ALTIVEC build -- BenH ]

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2013-10-30 16:02:28 +11:00
..
Makefile powerpc: Add VMX optimised xor for RAID5 2013-10-30 16:02:28 +11:00
alloc.c Disintegrate asm/system.h for PowerPC 2012-03-28 18:30:02 +01:00
checksum_32.S powerpc: Rename files to have consistent _32/_64 suffixes 2005-10-10 21:52:43 +10:00
checksum_64.S powerpc: Restore registers on error exit from csum_partial_copy_generic() 2013-10-03 17:22:42 +10:00
checksum_wrappers_64.c powerpc: various straight conversions from module.h --> export.h 2011-10-31 19:30:44 -04:00
code-patching.c powerpc: Don't use __put_user() in patch_instruction 2012-09-05 16:05:23 +10:00
copy_32.S powerpc: Fix incorrect .stabs entry for copy_32.S 2010-09-02 14:07:34 +10:00
copypage_64.S powerpc: POWER7 optimised copy_page using VMX and enhanced prefetch 2012-07-03 14:14:44 +10:00
copypage_power7.S powerpc/pseries: Improve stream generation comments in copypage/user 2013-06-01 08:29:26 +10:00
copyuser_64.S powerpc: Change mtcrf to use real register names 2012-07-10 19:18:11 +10:00
copyuser_power7.S powerpc: Fix endian issues in VMX copy loops 2013-10-11 16:48:25 +11:00
crtsavres.S powerpc: Put the gpr save/restore functions in their own section 2012-07-11 14:19:59 +10:00
devres.c powerpc: various straight conversions from module.h --> export.h 2011-10-31 19:30:44 -04:00
div64.S powerpc: Fix a corner case in __div64_32 2005-10-20 09:37:02 +10:00
feature-fixups-test.S powerpc: Ensure the else case of feature sections will fit 2011-01-21 14:08:33 +11:00
feature-fixups.c powerpc: Copy down exception vectors after feature fixups 2011-11-16 14:47:54 +11:00
hweight_64.S powerpc: Fix usage of register macros getting ready for %r0 change 2012-07-10 19:17:55 +10:00
ldstfp.S powerpc: Fixes for instructions not using correct register naming 2012-07-10 19:18:16 +10:00
locks.c powerpc: Fix little endian lppaca, slb_shadow and dtl_entry 2013-08-14 15:33:35 +10:00
mem_64.S powerpc: Change mtcrf to use real register names 2012-07-10 19:18:11 +10:00
memcpy_64.S powerpc: Change mtcrf to use real register names 2012-07-10 19:18:11 +10:00
memcpy_power7.S powerpc: Fix endian issues in VMX copy loops 2013-10-11 16:48:25 +11:00
rheap.c powerpc: various straight conversions from module.h --> export.h 2011-10-31 19:30:44 -04:00
sstep.c powerpc: Fix Unaligned LE Floating Point Loads and Stores 2013-10-30 16:01:36 +11:00
string.S powerpc: 64bit optimised __clear_user 2012-07-03 14:14:41 +10:00
string_64.S powerpc: Optimise the 64bit optimised __clear_user 2012-07-03 14:14:48 +10:00
usercopy_64.c powerpc: Rename files to have consistent _32/_64 suffixes 2005-10-10 21:52:43 +10:00
vmx-helper.c powerpc: POWER7 optimised copy_page using VMX and enhanced prefetch 2012-07-03 14:14:44 +10:00
xor_vmx.c powerpc: Add VMX optimised xor for RAID5 2013-10-30 16:02:28 +11:00