Commit ea4d26ae ("raid5: add AVX optimized RAID5 checksumming") introduced x86/ arch wide defines for AFLAGS and CFLAGS indicating AVX support in binutils based on the same test we have in x86/crypto/ right now. To minimize duplication drop our implementation in favour to the one in x86/.
Unified · Split
| @@ -34,12 +34,5 @@ salsa20-x86_64-y := salsa20-x86_64-asm_64.o salsa20_glue.o · 33 unmodified lines | ||
| 34 | 34 | serpent-sse2-x86_64-y := serpent-sse2-x86_64-asm_64.o serpent_sse2_glue.o |
| 35 | 35 | |
| 36 | 36 | aesni-intel-y := aesni-intel_asm.o aesni-intel_glue.o fpu.o |
| 37 | − | |
| 38 | 37 | ghash-clmulni-intel-y := ghash-clmulni-intel_asm.o ghash-clmulni-intel_glue.o |
| 39 | − | |
| 40 | −# enable AVX support only when $(AS) can actually assemble the instructions | |
| 41 | −ifeq ($(call as-instr,vpxor %xmm0$(comma)%xmm1$(comma)%xmm2,yes,no),yes) | |
| 42 | −AFLAGS_sha1_ssse3_asm.o += -DSHA1_ENABLE_AVX_SUPPORT | |
| 43 | −CFLAGS_sha1_ssse3_glue.o += -DSHA1_ENABLE_AVX_SUPPORT | |
| 44 | −endif | |
| 45 | 38 | sha1-ssse3-y := sha1_ssse3_asm.o sha1_ssse3_glue.o |
| @@ -468,7 +468,7 @@ W_PRECALC_SSSE3 · 467 unmodified lines | ||
| 468 | 468 | */ |
| 469 | 469 | SHA1_VECTOR_ASM sha1_transform_ssse3 |
| 470 | 470 | |
| 471 | −#ifdef SHA1_ENABLE_AVX_SUPPORT | |
| 471 | +#ifdef CONFIG_AS_AVX | |
| 472 | 472 | |
| 473 | 473 | .macro W_PRECALC_AVX |
| 474 | 474 | |
| @@ -35,7 +35,7 @@ · 34 unmodified lines | ||
| 35 | 35 | |
| 36 | 36 | asmlinkage void sha1_transform_ssse3(u32 *digest, const char *data, |
| 37 | 37 | unsigned int rounds); |
| 38 | −#ifdef SHA1_ENABLE_AVX_SUPPORT | |
| 38 | +#ifdef CONFIG_AS_AVX | |
| 39 | 39 | asmlinkage void sha1_transform_avx(u32 *digest, const char *data, |
| 40 | 40 | unsigned int rounds); |
| 41 | 41 | #endif |
| @@ -184,7 +184,7 @@ static struct shash_alg alg = { · 142 unmodified lines | ||
| 184 | 184 | } |
| 185 | 185 | }; |
| 186 | 186 | |
| 187 | −#ifdef SHA1_ENABLE_AVX_SUPPORT | |
| 187 | +#ifdef CONFIG_AS_AVX | |
| 188 | 188 | static bool __init avx_usable(void) |
| 189 | 189 | { |
| 190 | 190 | u64 xcr0; |
| @@ -209,7 +209,7 @@ static int __init sha1_ssse3_mod_init(void) · 18 unmodified lines | ||
| 209 | 209 | if (cpu_has_ssse3) |
| 210 | 210 | sha1_transform_asm = sha1_transform_ssse3; |
| 211 | 211 | |
| 212 | −#ifdef SHA1_ENABLE_AVX_SUPPORT | |
| 212 | +#ifdef CONFIG_AS_AVX | |
| 213 | 213 | /* allow AVX to override SSSE3, it's a little faster */ |
| 214 | 214 | if (avx_usable()) |
| 215 | 215 | sha1_transform_asm = sha1_transform_avx; |