diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/gcc.c | 4 | ||||
-rw-r--r-- | gcc/toplev.c | 4 |
3 files changed, 14 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5ac6697d9fc..d27b2551f15 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2011-07-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/49756 + * gcc.c (main): Call stack_limit_increase (64MB). + * toplev.c (toplev_main): Likewise. + 2011-07-21 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.c (ix86_expand_call): Call copy_to_mode_reg diff --git a/gcc/gcc.c b/gcc/gcc.c index 5e5d3c2b81e..fc0cb1b6d75 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -6156,6 +6156,10 @@ main (int argc, char **argv) signal (SIGCHLD, SIG_DFL); #endif + /* Parsing and gimplification sometimes need quite large stack. + Increase stack size limits if possible. */ + stack_limit_increase (64 * 1024 * 1024); + /* Allocate the argument vector. */ alloc_args (); diff --git a/gcc/toplev.c b/gcc/toplev.c index 109325cc871..de0a58a6773 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1911,6 +1911,10 @@ do_compile (void) int toplev_main (int argc, char **argv) { + /* Parsing and gimplification sometimes need quite large stack. + Increase stack size limits if possible. */ + stack_limit_increase (64 * 1024 * 1024); + expandargv (&argc, &argv); /* Initialization of GCC's environment, and diagnostics. */ |