- Significantly speed up automatic iterators (huge thanks to Osveron!)
- Add
simd_for_each
- Add equality comparison via
PackedEq
- Fix an issue with zipping even collections
- Fix an upcast on AVX2 machines
Announcing faster 0.4.0 - a 4,500+ line diff from 0.3.0
- Support
#![no_std]
- Add striping, gathers, and scatters.
- Add vector merging
- Add vectorized endianness operations
- Add limited vector swizzling
- Add lockstep packed iterators
- Add tons of docstrings
- Allow
FnMut
closures insimd_map
andsimd_reduce
- Vectorize operations on last elements of an uneven collection
- Implement compound assignment operators for architectures without hardware SIMD
- Add large vectors for architectures without hardware SIMD
- Add a changelog
- Fix a correctness issue when mapping over uneven collections
- Vectorize min/max for SSE4.1
- Vectorize
Upcast
for SSE4.1 - Implement
Downcast
polyfills on many more vector types - Implement and test
[saturating_]{hadd,hsub}
on more vector types. - Undeprecate
halfs
andinterleave
Announcing Faster 0.3.0, a 3,500+ line diff from 0.1.1
- Support for targets without hardware SIMD
- Support for architectures other than x86
- Documentation & examples for most objects
- Intuitive support for uneven collections
- Support SIMD-accelerated reductive operations
- Add upcasting, casting, and downcasting
- Add summation and product calculations for all vectors
- Add default initializer for vectors
- Add many more polyfills and feature gates
- Allow scalar iteration of SIMD iterators with `map` and `fold`
- Add vector constructors for interleaved and half-and-half patterns
- Expose saturating addition and subtraction intrinsics
- Add tests for sqrt, transmute, abs, recip, upcast, downcast, cast, and more
- Make
[saturating]_{hadd,hsub}
portable
Announcing Faster 0.2.0, a 2,500+ line diff from 0.1.1
- Change license to MPL 2.0
- Support for uneven collections
- Add packed transmutations
- Implement many more operations and polyfills
- Require only SSE for