summaryrefslogtreecommitdiff
path: root/gcc/gcc.c
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2011-07-22 08:33:37 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2011-07-22 08:33:37 +0000
commit00dacc40f84ec2a9c964f8addfb09ce6946c4a5a (patch)
tree2bd70c0d114f37575687da7d0ce9ef17bc9cbcc3 /gcc/gcc.c
parent621bdf5df65da3c8ae7851090ed3d8611442900b (diff)
downloadgcc-00dacc40f84ec2a9c964f8addfb09ce6946c4a5a.tar.gz
PR c++/49756
* libiberty.h (stack_limit_increase): New prototype. * stack-limit.c: New file. * Makefile.in: Regenerate deps. (CFILES): Add stack-limit.c. (REQUIRED_OFILES): Add ./stack-limit.$(objext). * configure.ac (checkfuncs): Add getrlimit and setrlimit. (AC_CHECK_FUNCS): Likewise. * configure: Regenerated. * config.in: Regenerated. * gcc.c (main): Call stack_limit_increase (64MB). * toplev.c (toplev_main): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176617 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gcc.c')
-rw-r--r--gcc/gcc.c4
1 files changed, 4 insertions, 0 deletions
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 ();