HELP! GCC exhausts 3b1 virtual memory

Alex Crain alex at wolf.umbc.edu
Wed Jun 7 03:41:28 AEST 1989


In article <23146 at srcsip.UUCP>, herndon at milo.SRC.Honeywell.COM (William Herndon) writes:

>    suggested.  The compile proceeds smoothly until the cc1 starts work
>    on c-parse.tab.c.  After thinking about it for a few minutes unix
>    complains about virtual memory being exhausted, and the make aborts.

	Try compiling without -O (this works with 1.31)

	This is becoming a serious problem (the size of gcc). Virtual
memory exausted means that you have run out of virtual address space,
a problem wothout a solution. The worst case that I've seen is in gas.
the file m68k.c in gas kills gcc with virtual memory exausted, and
also causes cc to produce bogus assembly code!

	The solution that time was to split the file into two smaller
files and link the objects together (yuuch!) but that won't work with
large bison output because bison output is generally one function
(double yuck!) that can't be split.

	It would be nice if gcc got more effecient, but since the
usually culprit is bison/yacc files, one option is to do an end run around 
the problem and build a bison that would buoid a jump table of absolute
branches, and then compile the individual cases separately as static
functions using common global variables. Kinda gross, but it'll hold us
over until somebody profiles the memory allocation in gcc.

#################################		:alex.
#Disclamer: Anyone who agrees   #    University of Maryland Baltimore County
#with me deserves what they get.#	alex at umbc3.umbc.edu
#################################	alex%nerwin at umbc3.umbc.edu



More information about the Comp.sys.att mailing list