[libcxx-commits] [libcxx] [libc++] Reduce the compilation time required by SIMD tests (PR #72602)

via libcxx-commits libcxx-commits at lists.llvm.org
Fri Nov 17 03:37:42 PST 2023


================
@@ -28,15 +28,15 @@ struct TestAllSimdAbiFunctor {
 
   template <class T, std::size_t... Ns>
   void instantiate_with_n(std::index_sequence<Ns...>) {
-    (types::for_each(sized_abis<T, Ns + 1>{}, F<T, Ns + 1>{}), ...);
+    (types::for_each(sized_abis<T, Ns>{}, F<T, Ns>{}), ...);
   }
 
   template <class T>
   void operator()() {
     using abis = types::type_list<ex::simd_abi::scalar, ex::simd_abi::native<T>, ex::simd_abi::compatible<T>>;
     types::for_each(abis{}, F<T, 1>());
 
-    instantiate_with_n<T>(std::make_index_sequence<max_simd_size - 1>{});
+    instantiate_with_n<T>(std::index_sequence<1, 2, 8, 16, max_simd_size - 2, max_simd_size - 1, max_simd_size>{});
----------------
philnik777 wrote:

I think we should also test 3 and 4 to have a small non-power-of-two vector and have all the powers of two covered, since they are probably the most commonly used ones.

https://github.com/llvm/llvm-project/pull/72602


More information about the libcxx-commits mailing list