diff options
author | Nathan West <nathan.west@okstate.edu> | 2014-12-22 08:25:42 -0600 |
---|---|---|
committer | Johnathan Corgan <johnathan@corganlabs.com> | 2014-12-23 08:21:04 -0800 |
commit | c37a6714120f1af566a68cca7404be3863e40c40 (patch) | |
tree | 11d5907677f1e7ab1b2ce73411f305eab0913e1f /volk | |
parent | 16e402e849078d0edb2d440c49c715b1f7e65485 (diff) |
volk: add missing sse2 puppets for popcnt
Diffstat (limited to 'volk')
-rw-r--r-- | volk/kernels/volk/volk_32u_popcntpuppet_32u.h | 4 | ||||
-rw-r--r-- | volk/kernels/volk/volk_64u_popcntpuppet_64u.h | 12 |
2 files changed, 13 insertions, 3 deletions
diff --git a/volk/kernels/volk/volk_32u_popcntpuppet_32u.h b/volk/kernels/volk/volk_32u_popcntpuppet_32u.h index 056983e817..d5edd35b81 100644 --- a/volk/kernels/volk/volk_32u_popcntpuppet_32u.h +++ b/volk/kernels/volk/volk_32u_popcntpuppet_32u.h @@ -35,13 +35,13 @@ static inline void volk_32u_popcntpuppet_32u_generic(uint32_t* outVector, const } #endif /* LV_HAVE_GENERIC */ -#ifdef LV_HAVE_SSE_4_2 +#ifdef LV_HAVE_SSE4_2 static inline void volk_32u_popcntpuppet_32u_a_sse4_2(uint32_t* outVector, const uint32_t* inVector, unsigned int num_points){ unsigned int ii; for(ii=0; ii < num_points; ++ii) { volk_32u_popcnt_a_sse4_2(outVector+ii, *(inVector+ii) ); } } -#endif /* LV_HAVE_GENERIC */ +#endif /* LV_HAVE_SSE4_2 */ #endif /* INCLUDED_volk_32fc_s32fc_rotatorpuppet_32fc_a_H */ diff --git a/volk/kernels/volk/volk_64u_popcntpuppet_64u.h b/volk/kernels/volk/volk_64u_popcntpuppet_64u.h index 3903e0d561..ae20ff497c 100644 --- a/volk/kernels/volk/volk_64u_popcntpuppet_64u.h +++ b/volk/kernels/volk/volk_64u_popcntpuppet_64u.h @@ -31,11 +31,21 @@ static inline void volk_64u_popcntpuppet_64u_generic(uint64_t* outVector, const unsigned int ii; for(ii=0; ii < num_points; ++ii) { volk_64u_popcnt_generic(outVector+ii, num_points ); - + } } #endif /* LV_HAVE_GENERIC */ +#ifdef LV_HAVE_SSE4_2 +static inline void volk_64u_popcntpuppet_64u_a_sse4_2(uint64_t* outVector, const uint64_t* inVector, unsigned int num_points){ + unsigned int ii; + for(ii=0; ii < num_points; ++ii) { + volk_64u_popcnt_a_sse4_2(outVector+ii, num_points ); + + } +} +#endif /* LV_HAVE_SSE4_2 */ + #ifdef LV_HAVE_NEON static inline void volk_64u_popcntpuppet_64u_neon(uint64_t* outVector, const uint64_t* inVector, unsigned int num_points){ unsigned int ii; |