Skip to content

Commit d0be84b

Browse files
WIP
1 parent 4e8d270 commit d0be84b

File tree

1 file changed

+24
-4
lines changed

1 file changed

+24
-4
lines changed

test/test_load_store.cpp

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)