DirectXMath version 3.10 is included in the Windows 10 Creators Update SDK (15063) which is installed with Visual Studio 2017.
The new version includes the following:
XMVectorSumfor horizontal adds
- ARMv8 intrinsics use for ARM64 platform (division, rounding, half-precision conversion)
- Added SSE3 codepaths using opt-in
- XMVectorRound fix for no-intrinsics to match round-to-nearest (even)
- XMStoreFloat3SE fix when max channel isn't a perfect power of 2
- constexpr conformance fix and workaround for compiler bug in VS 2015 RTM
- Remove support for VS 2012 compilers
For the Windows x86 and Windows x64 platforms, the DirectXMath library assumes you are using SSE/SSE2 as support for those is required by the platform (see this blog post for details). If you use the
/arch switch with AVX or AVX2, it makes use of additional instruction sets including SSE3, SSE4.1, AVX, and F16C. Previously you could enable the SSE 4.1/SSE3 optimizations together, but now with DirectXMath 3.10, the SSE3 optimizations can be enabled independently via the
_XM_SSE3_INTRINSICS_ control define. Officially SSE3 is not required by the base Windows platform, but it's support is very wide-spread so you can choose to require SSE3 even without requiring SSE4.1 or AVX/AVX2. See this blog post.
This version can also be obtained via NuGet which will work with Visual Studio 2013 and Visual Studio 2015. DirectXMath no longer supports VS 2012.