[gtk: 1/5] Fix illegal instruction crash on x64 CPUs without POPCNT instruction when compiled with MSVC




commit 6835fcf3cf3b366823f39a2c2cf37090e07a962e
Author: scherek <scherek outlook com>
Date:   Sat Jun 12 16:18:26 2021 +0200

    Fix illegal instruction crash on x64 CPUs without POPCNT instruction when compiled with MSVC

 gtk/gtkpopcountprivate.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/gtk/gtkpopcountprivate.h b/gtk/gtkpopcountprivate.h
index df2282c985..3862f5cb24 100644
--- a/gtk/gtkpopcountprivate.h
+++ b/gtk/gtkpopcountprivate.h
@@ -20,7 +20,7 @@
 
 #pragma once
 
-#if defined(_MSC_VER) && !defined (_M_ARM) && !defined (_M_ARM64)
+#if defined(_MSC_VER) && !defined(_M_ARM) && !defined(_M_ARM64) && defined(__AVX__) && defined(__SSE4_2__) 
&& defined(__POPCNT__)
 #include <intrin.h>
 
 static inline guint
@@ -29,7 +29,7 @@ gtk_popcount (guint32 value)
   return __popcnt (value);
 }
 #elif defined(__GNUC__) || defined(__clang__)
-# define gtk_popcount(v) __builtin_popcount(v)
+#define gtk_popcount(v) __builtin_popcount (v)
 #else
 static inline guint
 gtk_popcount (guint32 value)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]