Use default stack size on Windows
authorJan Dubois <jand@activestate.com>
Tue, 30 Nov 2010 01:10:02 +0000 (17:10 -0800)
committerJan Dubois <jand@activestate.com>
Tue, 30 Nov 2010 01:11:28 +0000 (17:11 -0800)
Perl used to request 16MB of stack instead of the default 1MB (when
compiling with VC++).  I believe this was done to accomodate the
recursive nature of the regex engine, which is no longer a concern
since 5.10.  The requested stack size will be reserved for each
thread created by the process, not just for the main thread.

Note also that we don't explicitly specify the stack size when
compiling with GCC on Windows (MinGW), which reserves a stack size of
2MB by default.

win32/Makefile
win32/makefile.mk

index 2989871..248c685 100644 (file)
@@ -1004,14 +1004,14 @@ perlmainst$(o) : perlmainst.c
        $(CC) $(CFLAGS_O) $(OBJOUT_FLAG)$@ -c perlmainst.c
 
 $(PERLEXE): $(PERLDLL) $(CONFIGPM) $(PERLEXE_OBJ) $(PERLEXE_RES)
-       $(LINK32) -subsystem:console -out:$@ -stack:0x1000000 $(LINK_FLAGS) \
+       $(LINK32) -subsystem:console -out:$@ $(LINK_FLAGS) \
            $(LIBFILES) $(PERLEXE_OBJ) $(SETARGV_OBJ) $(PERLIMPLIB) $(PERLEXE_RES)
        $(EMBED_EXE_MANI)
        copy $(PERLEXE) $(WPERLEXE)
        $(MINIPERL) -I..\lib bin\exetype.pl $(WPERLEXE) WINDOWS
 
 $(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES)
-       $(LINK32) -subsystem:console -out:$@ -stack:0x1000000 $(LINK_FLAGS) \
+       $(LINK32) -subsystem:console -out:$@ $(LINK_FLAGS) \
            @Extensions_static $(PERLSTATICLIB) /PDB:NONE \
            $(LIBFILES) $(PERLEXEST_OBJ) $(SETARGV_OBJ) $(PERLEXE_RES)
        $(EMBED_EXE_MANI)
index 0c68318..fe845c2 100644 (file)
@@ -1382,7 +1382,7 @@ $(PERLEXE): $(PERLDLL) $(CONFIGPM) $(PERLEXE_OBJ) $(PERLEXE_RES)
        $(LINK32) -mconsole -o $@ $(BLINK_FLAGS)  \
            $(PERLEXE_OBJ) $(PERLEXE_RES) $(PERLIMPLIB) $(LIBFILES)
 .ELSE
-       $(LINK32) -subsystem:console -out:$@ -stack:0x1000000 $(BLINK_FLAGS) \
+       $(LINK32) -subsystem:console -out:$@ $(BLINK_FLAGS) \
            $(LIBFILES) $(PERLEXE_OBJ) $(SETARGV_OBJ) $(PERLIMPLIB) $(PERLEXE_RES)
        $(EMBED_EXE_MANI)
 .ENDIF
@@ -1401,7 +1401,7 @@ $(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES)
                $(PERLSTATICLIB) $(LIBFILES) $(PERLEXEST_OBJ) \
                $(PERLEXE_RES) $(LKPOST))
 .ELSE
-       $(LINK32) -subsystem:console -out:$@ -stack:0x1000000 $(BLINK_FLAGS) \
+       $(LINK32) -subsystem:console -out:$@ $(BLINK_FLAGS) \
            @Extensions_static $(PERLSTATICLIB) /PDB:NONE \
            $(LIBFILES) $(PERLEXEST_OBJ) $(SETARGV_OBJ) $(PERLEXE_RES)
        $(EMBED_EXE_MANI)