From 9858ad81f34061f7835a16d309babc9b85ffe038 Mon Sep 17 00:00:00 2001
From: ImperatorS79 <fevrier.simon@gmail.com>
Date: Thu, 24 Oct 2024 11:59:16 +0200
Subject: [PATCH] SSE2 detection gcc See
 https://gcc.gnu.org/onlinedocs/gcc-4.8.2/gcc/X86-Built-in-Functions.html

---
 src/Standard/Standard.cxx | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/Standard/Standard.cxx b/src/Standard/Standard.cxx
index bb06de71fd..8467bc3bd1 100644
--- a/src/Standard/Standard.cxx
+++ b/src/Standard/Standard.cxx
@@ -249,6 +249,7 @@ namespace
       // if not then use MMgrRaw instead of MMgrTBBalloc.
       // It is to avoid runtime crash when running on a CPU
       // that supports SSE but does not support SSE2 (some modifications of AMD Sempron).
+  #if defined(_MSC_VER)
       static const DWORD _SSE2_FEATURE_BIT(0x04000000);
       DWORD volatile dwFeature;
       _asm
@@ -270,6 +271,11 @@ namespace
       }
       if ((dwFeature & _SSE2_FEATURE_BIT) == 0)
         anAllocId = 0;
+  #elif defined(__GNUC__)
+      __builtin_cpu_init();
+      if (__builtin_cpu_supports("sse2"))
+        anAllocId = 0;
+  #endif
     }
 #endif
 
-- 
2.44.0.windows.1

