lkml.org 
[lkml]   [2020]   [Apr]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 2/2] raid6/algos.c: refactor raid6_algos array for x86
Date
Factor out the common pointer references.

Common for i386 and x86_64:
raid6_avx512x2
raid6_avx512x1
raid6_avx2x2
raid6_avx2x1
raid6_sse2x2
raid6_sse2x1
raid6_sse1x2

Only for i386:
raid6_sse1x1
raid6_mmxx2
raid6_mmxx1

Only for x86_64:
raid6_avx512x4
raid6_avx2x4
raid6_sse2x4

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

lib/raid6/algos.c | 24 ++++++++++--------------
1 file changed, 10 insertions(+), 14 deletions(-)

diff --git a/lib/raid6/algos.c b/lib/raid6/algos.c
index 978fa19efbbf..c0f2fd6e0621 100644
--- a/lib/raid6/algos.c
+++ b/lib/raid6/algos.c
@@ -30,32 +30,28 @@ EXPORT_SYMBOL_GPL(raid6_call);

const struct raid6_calls * const raid6_algos[] = {
#ifdef CONFIG_X86
-#if defined(CONFIG_X86_32)
#ifdef CONFIG_AS_AVX512
- &raid6_avx512x2,
- &raid6_avx512x1,
-#endif
- &raid6_avx2x2,
- &raid6_avx2x1,
- &raid6_sse2x2,
- &raid6_sse2x1,
- &raid6_sse1x2,
- &raid6_sse1x1,
- &raid6_mmxx2,
- &raid6_mmxx1,
-#endif
#if defined(CONFIG_X86_64)
-#ifdef CONFIG_AS_AVX512
&raid6_avx512x4,
+#endif
&raid6_avx512x2,
&raid6_avx512x1,
#endif
+#ifdef CONFIG_X86_64
&raid6_avx2x4,
+#endif
&raid6_avx2x2,
&raid6_avx2x1,
+#ifdef CONFIG_X86_64
&raid6_sse2x4,
+#endif
&raid6_sse2x2,
&raid6_sse2x1,
+ &raid6_sse1x2,
+#ifdef CONFIG_X86_32
+ &raid6_sse1x1,
+ &raid6_mmxx2,
+ &raid6_mmxx1,
#endif
#endif /* CONFIG_X86 */
#ifdef CONFIG_ALTIVEC
--
2.25.1
\
 
 \ /
  Last update: 2020-04-21 09:41    [W:0.018 / U:0.292 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site