14
14
15
15
#include "internal.h"
16
16
17
+ typedef void (void_f )(void );
18
+
17
19
static struct raid_func {
18
20
const char * name ;
19
- void ( * p )() ;
21
+ void_f * func ;
20
22
} RAID_FUNC [] = {
21
- { "int8" , raid_gen3_int8 },
22
- { "int8" , raid_gen4_int8 },
23
- { "int8" , raid_gen5_int8 },
24
- { "int8" , raid_gen6_int8 },
25
- { "int32" , raid_gen1_int32 },
26
- { "int64" , raid_gen1_int64 },
27
- { "int32" , raid_gen2_int32 },
28
- { "int64" , raid_gen2_int64 },
29
- { "int32" , raid_genz_int32 },
30
- { "int64" , raid_genz_int64 },
31
- { "int8" , raid_rec1_int8 },
32
- { "int8" , raid_rec2_int8 },
33
- { "int8" , raid_recX_int8 },
23
+ { "int8" , ( void_f * ) raid_gen3_int8 },
24
+ { "int8" , ( void_f * ) raid_gen4_int8 },
25
+ { "int8" , ( void_f * ) raid_gen5_int8 },
26
+ { "int8" , ( void_f * ) raid_gen6_int8 },
27
+ { "int32" , ( void_f * ) raid_gen1_int32 },
28
+ { "int64" , ( void_f * ) raid_gen1_int64 },
29
+ { "int32" , ( void_f * ) raid_gen2_int32 },
30
+ { "int64" , ( void_f * ) raid_gen2_int64 },
31
+ { "int32" , ( void_f * ) raid_genz_int32 },
32
+ { "int64" , ( void_f * ) raid_genz_int64 },
33
+ { "int8" , ( void_f * ) raid_rec1_int8 },
34
+ { "int8" , ( void_f * ) raid_rec2_int8 },
35
+ { "int8" , ( void_f * ) raid_recX_int8 },
34
36
35
37
#ifdef CONFIG_X86
36
38
#ifdef CONFIG_SSE2
37
- { "sse2" , raid_gen1_sse2 },
38
- { "sse2" , raid_gen2_sse2 },
39
- { "sse2" , raid_genz_sse2 },
39
+ { "sse2" , ( void_f * ) raid_gen1_sse2 },
40
+ { "sse2" , ( void_f * ) raid_gen2_sse2 },
41
+ { "sse2" , ( void_f * ) raid_genz_sse2 },
40
42
#endif
41
43
#ifdef CONFIG_SSSE3
42
- { "ssse3" , raid_gen3_ssse3 },
43
- { "ssse3" , raid_gen4_ssse3 },
44
- { "ssse3" , raid_gen5_ssse3 },
45
- { "ssse3" , raid_gen6_ssse3 },
46
- { "ssse3" , raid_rec1_ssse3 },
47
- { "ssse3" , raid_rec2_ssse3 },
48
- { "ssse3" , raid_recX_ssse3 },
44
+ { "ssse3" , ( void_f * ) raid_gen3_ssse3 },
45
+ { "ssse3" , ( void_f * ) raid_gen4_ssse3 },
46
+ { "ssse3" , ( void_f * ) raid_gen5_ssse3 },
47
+ { "ssse3" , ( void_f * ) raid_gen6_ssse3 },
48
+ { "ssse3" , ( void_f * ) raid_rec1_ssse3 },
49
+ { "ssse3" , ( void_f * ) raid_rec2_ssse3 },
50
+ { "ssse3" , ( void_f * ) raid_recX_ssse3 },
49
51
#endif
50
52
#ifdef CONFIG_AVX2
51
- { "avx2" , raid_gen1_avx2 },
52
- { "avx2" , raid_gen2_avx2 },
53
- { "avx2" , raid_rec1_avx2 },
54
- { "avx2" , raid_rec2_avx2 },
55
- { "avx2" , raid_recX_avx2 },
53
+ { "avx2" , ( void_f * ) raid_gen1_avx2 },
54
+ { "avx2" , ( void_f * ) raid_gen2_avx2 },
55
+ { "avx2" , ( void_f * ) raid_rec1_avx2 },
56
+ { "avx2" , ( void_f * ) raid_rec2_avx2 },
57
+ { "avx2" , ( void_f * ) raid_recX_avx2 },
56
58
#endif
57
59
#endif
58
60
59
61
#ifdef CONFIG_X86_64
60
62
#ifdef CONFIG_SSE2
61
- { "sse2e" , raid_gen2_sse2ext },
62
- { "sse2e" , raid_genz_sse2ext },
63
+ { "sse2e" , ( void_f * ) raid_gen2_sse2ext },
64
+ { "sse2e" , ( void_f * ) raid_genz_sse2ext },
63
65
#endif
64
66
#ifdef CONFIG_SSSE3
65
- { "ssse3e" , raid_gen3_ssse3ext },
66
- { "ssse3e" , raid_gen4_ssse3ext },
67
- { "ssse3e" , raid_gen5_ssse3ext },
68
- { "ssse3e" , raid_gen6_ssse3ext },
67
+ { "ssse3e" , ( void_f * ) raid_gen3_ssse3ext },
68
+ { "ssse3e" , ( void_f * ) raid_gen4_ssse3ext },
69
+ { "ssse3e" , ( void_f * ) raid_gen5_ssse3ext },
70
+ { "ssse3e" , ( void_f * ) raid_gen6_ssse3ext },
69
71
#endif
70
72
#ifdef CONFIG_AVX2
71
- { "avx2e" , raid_gen3_avx2ext },
72
- { "avx2e" , raid_genz_avx2ext },
73
- { "avx2e" , raid_gen4_avx2ext },
74
- { "avx2e" , raid_gen5_avx2ext },
75
- { "avx2e" , raid_gen6_avx2ext },
73
+ { "avx2e" , ( void_f * ) raid_gen3_avx2ext },
74
+ { "avx2e" , ( void_f * ) raid_genz_avx2ext },
75
+ { "avx2e" , ( void_f * ) raid_gen4_avx2ext },
76
+ { "avx2e" , ( void_f * ) raid_gen5_avx2ext },
77
+ { "avx2e" , ( void_f * ) raid_gen6_avx2ext },
76
78
#endif
77
79
#endif
78
80
{ 0 , 0 }
79
81
};
80
82
81
- static const char * raid_tag (void ( * func )() )
83
+ static const char * raid_tag (void_f * func )
82
84
{
83
85
struct raid_func * i = RAID_FUNC ;
84
86
85
87
while (i -> name != 0 ) {
86
- if (i -> p == func )
88
+ if (i -> func == func )
87
89
return i -> name ;
88
90
++ i ;
89
91
}
@@ -95,51 +97,51 @@ static const char *raid_tag(void (*func)())
95
97
96
98
const char * raid_gen1_tag (void )
97
99
{
98
- return raid_tag (raid_gen_ptr [0 ]);
100
+ return raid_tag (( void_f * ) raid_gen_ptr [0 ]);
99
101
}
100
102
101
103
const char * raid_gen2_tag (void )
102
104
{
103
- return raid_tag (raid_gen_ptr [1 ]);
105
+ return raid_tag (( void_f * ) raid_gen_ptr [1 ]);
104
106
}
105
107
106
108
const char * raid_genz_tag (void )
107
109
{
108
- return raid_tag (raid_genz_ptr );
110
+ return raid_tag (( void_f * ) raid_genz_ptr );
109
111
}
110
112
111
113
const char * raid_gen3_tag (void )
112
114
{
113
- return raid_tag (raid_gen_ptr [2 ]);
115
+ return raid_tag (( void_f * ) raid_gen_ptr [2 ]);
114
116
}
115
117
116
118
const char * raid_gen4_tag (void )
117
119
{
118
- return raid_tag (raid_gen_ptr [3 ]);
120
+ return raid_tag (( void_f * ) raid_gen_ptr [3 ]);
119
121
}
120
122
121
123
const char * raid_gen5_tag (void )
122
124
{
123
- return raid_tag (raid_gen_ptr [4 ]);
125
+ return raid_tag (( void_f * ) raid_gen_ptr [4 ]);
124
126
}
125
127
126
128
const char * raid_gen6_tag (void )
127
129
{
128
- return raid_tag (raid_gen_ptr [5 ]);
130
+ return raid_tag (( void_f * ) raid_gen_ptr [5 ]);
129
131
}
130
132
131
133
const char * raid_rec1_tag (void )
132
134
{
133
- return raid_tag (raid_rec_ptr [0 ]);
135
+ return raid_tag (( void_f * ) raid_rec_ptr [0 ]);
134
136
}
135
137
136
138
const char * raid_rec2_tag (void )
137
139
{
138
- return raid_tag (raid_rec_ptr [1 ]);
140
+ return raid_tag (( void_f * ) raid_rec_ptr [1 ]);
139
141
}
140
142
141
143
const char * raid_recX_tag (void )
142
144
{
143
- return raid_tag (raid_rec_ptr [2 ]);
145
+ return raid_tag (( void_f * ) raid_rec_ptr [2 ]);
144
146
}
145
147
0 commit comments