HomeAssistantRepository/media-libs/opencv/files/opencv-3.4.1-popcnt.patch

31 lines
890 B
Diff

From a2d6fc7ac040c6ef94a36515f9ea24428f8f1ecc Mon Sep 17 00:00:00 2001
From: Alexander Alekhin <alexander.alekhin@intel.com>
Date: Tue, 24 Apr 2018 12:40:25 +0300
Subject: [PATCH] cmake: fix popcnt detection
via GCC/Clang __POPCNT__ define
---
cmake/checks/cpu_popcnt.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/cmake/checks/cpu_popcnt.cpp b/cmake/checks/cpu_popcnt.cpp
index 16e5575108b..44c7deda053 100644
--- a/cmake/checks/cpu_popcnt.cpp
+++ b/cmake/checks/cpu_popcnt.cpp
@@ -4,12 +4,14 @@
# define CV_POPCNT_U64 _mm_popcnt_u64
# endif
# define CV_POPCNT_U32 _mm_popcnt_u32
-#else
+#elif defined(__POPCNT__)
# include <popcntintrin.h>
# if defined(__x86_64__)
# define CV_POPCNT_U64 __builtin_popcountll
# endif
# define CV_POPCNT_U32 __builtin_popcount
+#else
+# error "__POPCNT__ is not defined by compiler"
#endif
int main()