Recent Releases

1.4.120 Nov 2018 09:44 minor feature: * bug fixes * more efficient AVX2 gather codegen
1.4.001 Oct 2018 15:33 minor feature: * Start of an upgrade path to std::experimental::simd * simdize improvements * simd_for_each improvements * sine cosine fixes
1.3.327 Nov 2017 15:57 minor bugfix: * Support for AVX2 gather instructions * Shift optimizations * Preliminary support for compiling to non-x86 targets (uses only the Scalar ABI) * Resolve failing static assertions, moving the relevant tests to unit tests * Fixed is_simd_vector and is_simd_mask traits to consider the ElementType too.
1.3.203 May 2017 12:46 minor bugfix: * Resolve warnings from GCC 6 about ignored attributes. * Support for Kaby Lake detection.
1.3.109 Mar 2017 14:00 minor bugfix: * `swap(v i , v j )` did not compile. Vc 1.3.1 overloads the `swap` function and thus enables swapping scalars into/out of vector and mask objects. * The spline example has moved to the new Vc-examples-nonfree repository since it has a license that restricts redistribution.
1.3.028 Oct 2016 13:31 major bugfix: * 64-bit MS VisualStudio 2015 support. (See #119 for some of the gory details.) * ICC 17 support (#143). * GCC 6 support (#125). * Workarounds for bad ICC code-gen (#135). Now Vc not only works correctly when compiled with ICC, but also performs as good (or better) as GCC and Clang. * Safer and more restrictive subscripting on `Vector` and `Mask`. There is a minor source compatibility break involved, since `Vector::operator ` returned lvalue references before Vc 1.3 and returns a smart reference (rvalue) now. This change reduces the chance of miscompilation internal compiler errors and reduces the reliance on non-standard C++ extensions. * Support for `x32` compilation (like x86_64 but with 32-bit pointers). * Added scatter interface to `SimdArray` (thanks to Kay Jahnke). * `simd_cast` properly works with ADL now (i.e. you don't have to write fully qualified `Vc::simd_cast` anymore). * Added `simd_for_each_n` (thanks to Hartmut Kaiser).