b5ba19577f
Add SimdArray trait and safe gather/scatter API (rust-lang/stdsimd#139) This PR has four parts, without which it doesn't make a lot of sense: - The introduction of the SimdArray trait for abstraction over vectors. - The implementation of private vector-of-pointers types. - Using these to allow constructing vectors with SimdArray::gather_{or, or_default, select}. - Using these to allow writing vectors using SimdArray::scatter{,_select}.