From f6c33b45185727c3b50c8d9b0075c5c213b1b1be Mon Sep 17 00:00:00 2001 From: Ken Brown Date: Mon, 27 Aug 2018 10:03:54 -0400 Subject: [PATCH] Fix 32-bit Cygwin builds with libjit * src/lisp.h (USE_STACK_LISP_OBJECTS): Define to false for 32-bit Cygwin builds with libjit. --- src/lisp.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/lisp.h b/src/lisp.h index 67fa18eaa3c..0a13f779c21 100644 --- a/src/lisp.h +++ b/src/lisp.h @@ -4633,11 +4633,12 @@ safe_free_unbind_to (ptrdiff_t count, ptrdiff_t sa_count, Lisp_Object val) #if (!defined USE_STACK_LISP_OBJECTS \ && defined __GNUC__ && !defined __clang__ \ && (! GNUC_PREREQ (4, 3, 2) \ - || (defined __MINGW32__ && INTPTR_MAX <= INT_MAX && HAVE_LIBJIT))) + || ((defined __MINGW32__ || defined CYGWIN) \ + && INTPTR_MAX <= INT_MAX && HAVE_LIBJIT))) /* Work around GCC bugs 36584 and 35271, which were fixed in GCC 4.3.2. - Using libjit in 32-bit MS-Windows builds cannot ensure proper stack - alignment when JIT code calls back into Emacs, so disable stack-based - objects. */ + Using libjit in 32-bit MS-Windows or Cygwin builds cannot ensure + proper stack alignment when JIT code calls back into Emacs, so + disable stack-based objects. */ # define USE_STACK_LISP_OBJECTS false #endif #ifndef USE_STACK_LISP_OBJECTS -- 2.39.5