diff options
author | Jim Kukunas <james.t.kukunas@linux.intel.com> | 2012-11-08 16:47:44 -0500 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2012-12-13 00:42:01 -0500 |
commit | 7056741fd9fc14a65608549a4657cf5178f05f63 (patch) | |
tree | b30504208f8261c4a0a2625169eaff9aa9de544e /arch/x86/Makefile | |
parent | 54f89341e8b8da0cdac8a7b873491739de19f098 (diff) |
lib/raid6: Add AVX2 optimized recovery functions
Optimize RAID6 recovery functions to take advantage of
the 256-bit YMM integer instructions introduced in AVX2.
The patch was tested and benchmarked before submission.
However hardware is not yet released so benchmark numbers
cannot be reported.
Acked-by: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: Jim Kukunas <james.t.kukunas@linux.intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'arch/x86/Makefile')
-rw-r--r-- | arch/x86/Makefile | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/x86/Makefile b/arch/x86/Makefile index 58790bd85c1d..95477aae9ff7 100644 --- a/arch/x86/Makefile +++ b/arch/x86/Makefile | |||
@@ -123,9 +123,10 @@ cfi-sections := $(call as-instr,.cfi_sections .debug_frame,-DCONFIG_AS_CFI_SECTI | |||
123 | # does binutils support specific instructions? | 123 | # does binutils support specific instructions? |
124 | asinstr := $(call as-instr,fxsaveq (%rax),-DCONFIG_AS_FXSAVEQ=1) | 124 | asinstr := $(call as-instr,fxsaveq (%rax),-DCONFIG_AS_FXSAVEQ=1) |
125 | avx_instr := $(call as-instr,vxorps %ymm0$(comma)%ymm1$(comma)%ymm2,-DCONFIG_AS_AVX=1) | 125 | avx_instr := $(call as-instr,vxorps %ymm0$(comma)%ymm1$(comma)%ymm2,-DCONFIG_AS_AVX=1) |
126 | avx2_instr :=$(call as-instr,vpbroadcastb %xmm0$(comma)%ymm1,-DCONFIG_AS_AVX2=1) | ||
126 | 127 | ||
127 | KBUILD_AFLAGS += $(cfi) $(cfi-sigframe) $(cfi-sections) $(asinstr) $(avx_instr) | 128 | KBUILD_AFLAGS += $(cfi) $(cfi-sigframe) $(cfi-sections) $(asinstr) $(avx_instr) $(avx2_instr) |
128 | KBUILD_CFLAGS += $(cfi) $(cfi-sigframe) $(cfi-sections) $(asinstr) $(avx_instr) | 129 | KBUILD_CFLAGS += $(cfi) $(cfi-sigframe) $(cfi-sections) $(asinstr) $(avx_instr) $(avx2_instr) |
129 | 130 | ||
130 | LDFLAGS := -m elf_$(UTS_MACHINE) | 131 | LDFLAGS := -m elf_$(UTS_MACHINE) |
131 | 132 | ||