different variations of -march can be passed to the compiler.
this fixes mingw-w64 when __i686__ is not present.

Please Review.

diff --git a/mingw-w64-headers/crt/_mingw_mac.h
b/mingw-w64-headers/crt/_mingw_mac.h
index eeb59c69..115e58a5 100644
--- a/mingw-w64-headers/crt/_mingw_mac.h
+++ b/mingw-w64-headers/crt/_mingw_mac.h
@@ -47,10 +47,10 @@
 #    define _M_IX86 400
 #  elif defined(__i586__)
 #    define _M_IX86 500
-#  else
-     /* This gives wrong (600 instead of 300) value if -march=i386 is
specified
-      but we cannot check for__i386__ as it is defined for all 32-bit
CPUs. */
+#  elif defined(__i686__)
 #    define _M_IX86 600
+#  else
+#    define _M_IX86 300
 #  endif
 #endif /* if defined(_X86_) && !defined(_M_IX86) && !defined(_M_IA64) ...
*/

diff --git a/mingw-w64-libraries/winpthreads/src/thread.c
b/mingw-w64-libraries/winpthreads/src/thread.c
index fd213ccf..2e6fe610 100644
--- a/mingw-w64-libraries/winpthreads/src/thread.c
+++ b/mingw-w64-libraries/winpthreads/src/thread.c
@@ -1457,7 +1457,7 @@ pthread_setcanceltype (int type, int *oldtype)
   return 0;
 }

-#if defined(__i686__)
+#if defined(__i386__)
 /* Align ESP on 16-byte boundaries. */
 #  if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2)
 __attribute__((force_align_arg_pointer))
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to