@@ -240,6 +240,7 @@ enum class tested_types { core, fp, fp_extra, uint, sint };
240
240
// default type coverage over the tests
241
241
template <tested_types required> auto get_tested_types () {
242
242
if constexpr (required == tested_types::core) {
243
+ #ifdef ESIMD_TESTS_FULL_COVERAGE
243
244
return named_type_pack<
244
245
char , unsigned char , signed char , short , unsigned short , int ,
245
246
unsigned int , long , unsigned long , float , long long ,
@@ -248,12 +249,17 @@ template <tested_types required> auto get_tested_types() {
248
249
" unsigned int" , " long" , " unsigned long" ,
249
250
" float" , " long long" ,
250
251
" unsigned long long" );
252
+ #else
253
+ return named_type_pack<float , int , unsigned int , signed char >::generate (
254
+ " float" , " int" , " unsigned int" , " signed char" );
255
+ #endif
251
256
} else if constexpr (required == tested_types::fp) {
252
257
return named_type_pack<float >::generate (" float" );
253
258
} else if constexpr (required == tested_types::fp_extra) {
254
259
return named_type_pack<sycl::half, double >::generate (" sycl::half" ,
255
260
" double" );
256
261
} else if constexpr (required == tested_types::uint) {
262
+ #ifdef ESIMD_TESTS_FULL_COVERAGE
257
263
if constexpr (!std::is_signed_v<char >) {
258
264
return named_type_pack<unsigned char , unsigned short , unsigned int ,
259
265
unsigned long , unsigned long long ,
@@ -267,7 +273,11 @@ template <tested_types required> auto get_tested_types() {
267
273
" unsigned int" , " unsigned long" ,
268
274
" unsigned long long" );
269
275
}
276
+ #else
277
+ return named_type_pack<unsigned int >::generate (" unsigned int" );
278
+ #endif
270
279
} else if constexpr (required == tested_types::sint) {
280
+ #ifdef ESIMD_TESTS_FULL_COVERAGE
271
281
if constexpr (std::is_signed_v<char >) {
272
282
return named_type_pack<signed char , short , int , long , long long ,
273
283
char >::generate (" signed char" , " short" , " int" ,
@@ -277,6 +287,9 @@ template <tested_types required> auto get_tested_types() {
277
287
long long >::generate (" signed char" , " short" , " int" ,
278
288
" long" , " long long" );
279
289
}
290
+ #else
291
+ return named_type_pack<int , signed char >::generate (" int" , " signed char" );
292
+ #endif
280
293
} else {
281
294
static_assert (required != required, " Unexpected tested type" );
282
295
}
@@ -289,7 +302,13 @@ template <int... Values> auto inline get_sizes() {
289
302
290
303
// Factory method to retrieve pre-defined values_pack, to have the same
291
304
// default sizes over the tests
292
- auto inline get_all_sizes () { return get_sizes<1 , 8 , 16 , 32 >(); }
305
+ auto inline get_all_sizes () {
306
+ #ifdef ESIMD_TESTS_FULL_COVERAGE
307
+ return get_sizes<1 , 8 , 16 , 32 >();
308
+ #else
309
+ return get_sizes<1 , 8 >();
310
+ #endif
311
+ }
293
312
294
313
// It's a deprecated function and it exists only for backward compatibility and
295
314
// it should be deleted in the future. Use get_all_sizes() instead.
0 commit comments