Added AVX bitCount optimization

This commit is contained in:
Christophe Riccio 2016-05-30 14:39:43 +02:00
parent 52f8ecd973
commit 1bbc2935a2

View File

@ -1,9 +1,30 @@
/// @ref core /// @ref core
/// @file glm/detail/func_integer_simd.inl /// @file glm/detail/func_integer_simd.inl
#include "../simd/integer.h"
#if GLM_ARCH & GLM_ARCH_SSE2_BIT
namespace glm{ namespace glm{
namespace detail namespace detail
{ {
}//namespace detail }//namespace detail
# if GLM_ARCH & GLM_ARCH_AVX_BIT
template <>
GLM_FUNC_QUALIFIER int bitCount(uint32 x)
{
return _mm_popcnt_u32(x);
}
template <>
GLM_FUNC_QUALIFIER int bitCount(uint64 x)
{
return _mm_popcnt_u64(x);
}
# endif
}//namespace glm }//namespace glm
#endif//GLM_ARCH & GLM_ARCH_SSE2_BIT