Compiler uses a lot of memory for large initialized arrays

Joseph S. Myers joseph@codesourcery.com
Thu Dec 2 16:34:00 GMT 2004


On Thu, 2 Dec 2004, Ian Lance Taylor wrote:

> This test case works fine with 2.95.3.  Looking into the patches I
> came across this note from you from four years ago:
>     http://gcc.gnu.org/ml/gcc-patches/2000-10/msg00937.html

And hopefully you came across the November part of the thread as well: C99 
designated initializers allow

int i[10000000] = { 0, 1, 2, 3, 4, 5, /* ... */
9999998, 9999999, [0] = -1 };

which stops optimizing in the simplest way by writing out initializers to 
the assembler output before the whole initializer has been parsed.

-- 
Joseph S. Myers               http://www.srcf.ucam.org/~jsm28/gcc/
    jsm@polyomino.org.uk (personal mail)
    joseph@codesourcery.com (CodeSourcery mail)
    jsm28@gcc.gnu.org (Bugzilla assignments and CCs)



More information about the Gcc mailing list