From e4cae049ce9d581b7d3906fc9891b83283744bc1 Mon Sep 17 00:00:00 2001 From: Nursultan Zarlyk Date: Wed, 21 Sep 2022 15:43:44 +0200 Subject: [PATCH] Fix MSVC intrinsics --- src/lib/geogram/delaunay/periodic_delaunay_3d.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib/geogram/delaunay/periodic_delaunay_3d.cpp b/src/lib/geogram/delaunay/periodic_delaunay_3d.cpp index cb5a990e1da4..81315db26cb7 100644 --- a/src/lib/geogram/delaunay/periodic_delaunay_3d.cpp +++ b/src/lib/geogram/delaunay/periodic_delaunay_3d.cpp @@ -122,7 +122,11 @@ namespace { #if defined(GEO_COMPILER_GCC_FAMILY) return GEO::index_t(Numeric::uint32(__builtin_popcount(x))); #elif defined(GEO_COMPILER_MSVC) - return GEO::index_t(__popcnt(x)); + #if defined(_M_ARM64) + return GEO::index_t(_CountOneBits(x)); + #else + return GEO::index_t(__popcnt(x)); + #endif #else int result = 0; for(int b=0; b<32; ++b) {