Open
Description
As per #114818 (comment), BitArray.CopyTo
could benefit from using the cross platform intrinsic APIs rather than the platform specific ones.
This can be achieved by swapping out these API calls:
Avx512BW.IsSupported
->Vector512.IsHardwareAccelerated
Avx512BW.Shuffle(x, y)
->Vector512.Shuffle(x, y)
Avx512F.And(x, y)
->x & y
Avx512BW.Min(x, y)
->Vector512.Min(x, y)
Avx512F.Store(x, y)
->y.Store(x)
Similar changes could also be made to the Avx2
path (using Vector256
) and so on.