This is an archive of the discontinued LLVM Phabricator instance.

[libcxx] implement <experimental/simd> simd_mask<> casts and some horizontal operations.
Needs ReviewPublic

Authored by timshen on Jan 4 2018, 6:22 PM.

Details

Summary

popcount is implemented in terms of for loop. On x86, it can be specialized to _mm_movemask_* + __builtin_popcountll() in the future.