mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-06-28 16:41:01 +03:00
use C implementation of popcount for arm
This commit is contained in:
parent
4c924cc920
commit
5d773dd9db
@ -53,8 +53,8 @@ u32 popcount64_impl_c(u64a x) {
|
|||||||
return (x * 0x0101010101010101) >> 56;
|
return (x * 0x0101010101010101) >> 56;
|
||||||
#else
|
#else
|
||||||
// Synthesise from two 32-bit cases.
|
// Synthesise from two 32-bit cases.
|
||||||
return popcount32_impl(x >> 32) + popcount32_impl(x);
|
return popcount32_impl_c(x >> 32) + popcount32_impl_c(x);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // POPCOUNT_ARCH_COMMON_H
|
#endif // POPCOUNT_ARCH_COMMON_H
|
||||||
|
@ -39,6 +39,10 @@
|
|||||||
|
|
||||||
#if defined(ARCH_IA32) || defined(ARCH_X86_64)
|
#if defined(ARCH_IA32) || defined(ARCH_X86_64)
|
||||||
#include "util/arch/x86/popcount.h"
|
#include "util/arch/x86/popcount.h"
|
||||||
|
#else
|
||||||
|
#include "util/arch/common/popcount.h"
|
||||||
|
#define popcount32_impl(x) popcount32_impl_c(x)
|
||||||
|
#define popcount64_impl(x) popcount64_impl_c(x)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static really_inline
|
static really_inline
|
||||||
|
Loading…
x
Reference in New Issue
Block a user