Skip to content

Commit

Permalink
Only enable _mm_set1_epi64x on VS2015 Update 3 and later.
Browse files Browse the repository at this point in the history
Because apparently it was missing before update 3.

Closes #52.
  • Loading branch information
Lastique committed Nov 15, 2021
1 parent 4ae987a commit 71e9ed3
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions src/x86_vector_tools.hpp
Expand Up @@ -32,10 +32,10 @@ namespace detail {

BOOST_FORCEINLINE __m128i mm_set1_epiptr(uintptr_t ptr)
{
#if !defined(_MSC_VER) || _MSC_VER >= 1900
#if !defined(_MSC_VER) || _MSC_FULL_VER >= 190024210
return _mm_set1_epi64x(ptr);
#else
// MSVC up until 14.0 doesn't provide _mm_set1_epi64x
// MSVC up until 14.0 update 3 doesn't provide _mm_set1_epi64x
uint32_t lo = static_cast< uint32_t >(ptr), hi = static_cast< uint32_t >(ptr >> 32);
return _mm_set_epi32(hi, lo, hi, lo);
#endif
Expand Down

0 comments on commit 71e9ed3

Please sign in to comment.