@@ -32,29 +32,37 @@ struct load_store_test
3232 using uint16_vector_type = std::vector<uint16_t , allocator<uint16_t >>;
3333 using int32_vector_type = std::vector<int32_t , allocator<int32_t >>;
3434 using uint32_vector_type = std::vector<uint32_t , allocator<uint32_t >>;
35+ #ifndef XSIMD_WITH_ALTIVEC
3536 using int64_vector_type = std::vector<int64_t , allocator<int64_t >>;
3637 using uint64_vector_type = std::vector<uint64_t , allocator<uint64_t >>;
38+ #endif
3739#ifdef XSIMD_32_BIT_ABI
3840 using long_vector_type = std::vector<long , allocator<long >>;
3941 using ulong_vector_type = std::vector<unsigned long , allocator<unsigned long >>;
4042#endif
4143 using float_vector_type = std::vector<float , allocator<float >>;
44+ #if (!XSIMD_WITH_NEON && !XSIMD_WITH_ALTIVEC) || XSIMD_WITH_NEON64
4245 using double_vector_type = std::vector<double , allocator<double >>;
46+ #endif
4347
4448 int8_vector_type i8_vec;
4549 uint8_vector_type ui8_vec;
4650 int16_vector_type i16_vec;
4751 uint16_vector_type ui16_vec;
4852 int32_vector_type i32_vec;
4953 uint32_vector_type ui32_vec;
54+ #ifndef XSIMD_WITH_ALTIVEC
5055 int64_vector_type i64_vec;
5156 uint64_vector_type ui64_vec;
57+ #endif
5258#ifdef XSIMD_32_BIT_ABI
5359 long_vector_type l_vec;
5460 ulong_vector_type ul_vec;
5561#endif
5662 float_vector_type f_vec;
63+ #if (!XSIMD_WITH_NEON && !XSIMD_WITH_ALTIVEC) || XSIMD_WITH_NEON64
5764 double_vector_type d_vec;
65+ #endif
5866
5967 array_type expected;
6068
@@ -66,14 +74,18 @@ struct load_store_test
6674 init_test_vector (ui16_vec);
6775 init_test_vector (i32_vec);
6876 init_test_vector (ui32_vec);
77+ #ifndef XSIMD_WITH_ALTIVEC
6978 init_test_vector (i64_vec);
7079 init_test_vector (ui64_vec);
80+ #endif
7181#ifdef XSIMD_32_BIT_ABI
7282 init_test_vector (l_vec);
7383 init_test_vector (ul_vec);
7484#endif
7585 init_test_vector (f_vec);
86+ #if (!XSIMD_WITH_NEON && !XSIMD_WITH_ALTIVEC) || XSIMD_WITH_NEON64
7687 init_test_vector (d_vec);
88+ #endif
7789 }
7890
7991 void test_load ()
@@ -84,14 +96,16 @@ struct load_store_test
8496 test_load_impl (ui16_vec, " load uint16_t" );
8597 test_load_impl (i32_vec, " load int32_t" );
8698 test_load_impl (ui32_vec, " load uint32_t" );
99+ #ifndef XSIMD_WITH_ALTIVEC
87100 test_load_impl (i64_vec, " load int64_t" );
88101 test_load_impl (ui64_vec, " load uint64_t" );
102+ #endif
89103#ifdef XSIMD_32_BIT_ABI
90104 test_load_impl (l_vec, " load long" );
91105 test_load_impl (ul_vec, " load unsigned long" );
92106#endif
93107 test_load_impl (f_vec, " load float" );
94- #if !XSIMD_WITH_NEON || XSIMD_WITH_NEON64
108+ #if ( !XSIMD_WITH_NEON && !XSIMD_WITH_ALTIVEC) || XSIMD_WITH_NEON64
95109 test_load_impl (d_vec, " load double" );
96110#endif
97111 }
@@ -104,14 +118,16 @@ struct load_store_test
104118 test_store_impl (ui16_vec, " load uint16_t" );
105119 test_store_impl (i32_vec, " load int32_t" );
106120 test_store_impl (ui32_vec, " load uint32_t" );
121+ #ifndef XSIMD_WITH_ALTIVEC
107122 test_store_impl (i64_vec, " load int64_t" );
108123 test_store_impl (ui64_vec, " load uint64_t" );
124+ #endif
109125#ifdef XSIMD_32_BIT_ABI
110126 test_store_impl (l_vec, " load long" );
111127 test_store_impl (ul_vec, " load unsigned long" );
112128#endif
113129 test_store_impl (f_vec, " load float" );
114- #if !XSIMD_WITH_NEON || XSIMD_WITH_NEON64
130+ #if ( !XSIMD_WITH_NEON && !XSIMD_WITH_ALTIVEC) || XSIMD_WITH_NEON64
115131 test_store_impl (d_vec, " load double" );
116132#endif
117133 }
@@ -123,15 +139,17 @@ struct load_store_test
123139 test_gather_impl (ui16_vec, " gather uint16_t" );
124140 test_gather_impl (i32_vec, " gather int32_t" );
125141 test_gather_impl (ui32_vec, " gather uint32_t" );
142+ #ifndef XSIMD_WITH_ALTIVEC
126143 test_gather_impl (i64_vec, " gather int64_t" );
127144 test_gather_impl (ui64_vec, " gather uint64_t" );
145+ #endif
128146#ifdef XSIMD_32_BIT_ABI
129147 test_gather_impl (l_vec, " gather long" );
130148 test_gather_impl (ul_vec, " gather unsigned long" );
131149#endif
132150 test_gather_impl (f_vec, " gather float" );
133151 test_gather_impl (f_vec, " gather float" );
134- #if !XSIMD_WITH_NEON || XSIMD_WITH_NEON64
152+ #if ( !XSIMD_WITH_NEON && !XSIMD_WITH_ALTIVEC) || XSIMD_WITH_NEON64
135153 test_gather_impl (d_vec, " gather double" );
136154#endif
137155 }
@@ -144,14 +162,16 @@ struct load_store_test
144162 test_scatter_impl (ui16_vec, " scatter uint16_t" );
145163 test_scatter_impl (i32_vec, " scatter int32_t" );
146164 test_scatter_impl (ui32_vec, " scatter uint32_t" );
165+ #ifndef XSIMD_WITH_ALTIVEC
147166 test_scatter_impl (i64_vec, " scatter int64_t" );
148167 test_scatter_impl (ui64_vec, " scatter uint64_t" );
168+ #endif
149169#ifdef XSIMD_32_BIT_ABI
150170 test_scatter_impl (l_vec, " scatter long" );
151171 test_scatter_impl (ul_vec, " scatter unsigned long" );
152172#endif
153173 test_scatter_impl (f_vec, " scatter float" );
154- #if !XSIMD_WITH_NEON || XSIMD_WITH_NEON64
174+ #if ( !XSIMD_WITH_NEON && !XSIMD_WITH_ALTIVEC) || XSIMD_WITH_NEON64
155175 test_scatter_impl (d_vec, " scatter double" );
156176#endif
157177 }
0 commit comments