]> granicus.if.org Git - gc/commitdiff
Fix heap sections overflow for Win32/Cygwin with enabled parallel marker
authorIvan Maidanski <ivmai@mail.ru>
Mon, 19 Nov 2012 05:36:04 +0000 (09:36 +0400)
committerIvan Maidanski <ivmai@mail.ru>
Sun, 25 Nov 2012 19:24:36 +0000 (20:24 +0100)
* include/private/gc_priv.h (MAX_HEAP_SECTS): Define to 384 instead of
128 if Win32/Cygwin and PARALLEL_MARK.

include/private/gc_priv.h

index 7a15aacd4bdc3545b12333b94e28109c19a5d5eb..48aa334b3a8fea16bb2388ce0787e9136d7bb86b 100644 (file)
@@ -953,7 +953,11 @@ struct roots {
 #     define MAX_HEAP_SECTS 768         /* Separately added heap sections. */
 #   endif
 # elif defined(SMALL_CONFIG) && !defined(USE_PROC_FOR_LIBRARIES)
-#   define MAX_HEAP_SECTS 128           /* Roughly 256MB (128*2048*1K)  */
+#   if defined(PARALLEL_MARK) && (defined(MSWIN32) || defined(CYGWIN32))
+#     define MAX_HEAP_SECTS 384
+#   else
+#     define MAX_HEAP_SECTS 128         /* Roughly 256MB (128*2048*1K)  */
+#   endif
 # elif CPP_WORDSZ > 32
 #   define MAX_HEAP_SECTS 1024          /* Roughly 8GB                  */
 # else