@mhoemmen mdspan feature request 😉:
Allow mdspan::operator[] with one argument less than rank.
Mandates/Constraints: The resulting range is contiguous in memory.
Returns: A span (of static extent, if possible).
Then I can use std::simd CTAD from range:
simd::basic_vec(B[k], simd::flag_aligned);
instead of:
simd::unchecked_load<simd::vec<T, N>>(&B[k, 0], &B[k, N-1], simd::flag_aligned);
The former is not only simpler but also safer.





Qiita - 人気の記事