On Linux/x86-64 bootstrapping a biarch compiler fails with:

cc1: out of memory allocating 22752576 bytes after a total of 142843904 bytes
make[3]: *** [insn-recog.o] Error 1
make[3]: Leaving directory `/builds/gcc/misc/gcc'
make[2]: *** [all-stage2-gcc] Error 2

Running under debugger, I see:

(gdb) r -fpreprocessed insn-recog.i -quiet -dumpbase insn-recog.c 
-mtune=generic -auxbase-strip insn-recog.o -g -O2 -W -Wall -Wwrite-strings 
-Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long 
-Wno-variadic-macros -Wold-style-definition -Wmissing-format-attribute -Werror 
-version -fno-common -o insn-recog.s -dm

Starting program: /builds/gcc/misc/prev-gcc/cc1 -fpreprocessed insn-recog.i 
-quiet -dumpbase insn-recog.c -mtune=generic -auxbase-strip insn-recog.o -g -O2 
-W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic 
-Wno-long-long -Wno-variadic-macros -Wold-style-definition 
-Wmissing-format-attribute -Werror -version -fno-common -o insn-recog.s -dm
GNU C version 4.2.0 20060121 (experimental) (x86_64-suse-linux-gnu)
        compiled by GNU C version 4.0.2 20050901 (prerelease) (SUSE Linux).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: 33c06c82ca4a1087acb28cb4b71f71af

#0  0x00000000006b86cd in delete_trivially_dead_insns (insns=0x2aaabf79d4c0,
    nreg=2888) at /cvs/gcc-svn/trunk/gcc/cse.c:7371
#1  0x00000000012fed8e in rest_of_handle_loop_optimize ()
    at /cvs/gcc-svn/trunk/gcc/loop.c:11803
#2  0x0000000000ff84b8 in execute_one_pass (pass=0x16914e0)
    at /cvs/gcc-svn/trunk/gcc/passes.c:849
#3  0x0000000000ff8577 in execute_pass_list (pass=0x16914e0)
    at /cvs/gcc-svn/trunk/gcc/passes.c:881
#4  0x0000000000ff8595 in execute_pass_list (pass=0x168fcc0)
    at /cvs/gcc-svn/trunk/gcc/passes.c:882
#5  0x00000000004f0b99 in tree_rest_of_compilation (fndecl=0x2aaab3e12400)
    at /cvs/gcc-svn/trunk/gcc/tree-optimize.c:412
#6  0x0000000000425762 in c_expand_body (fndecl=0x2aaab3e12400)
    at /cvs/gcc-svn/trunk/gcc/c-decl.c:6689
#7  0x00000000010a6ac4 in cgraph_expand_function (node=0x2aaab5766180)
    at /cvs/gcc-svn/trunk/gcc/cgraphunit.c:1098
#8  0x00000000010a6d52 in cgraph_expand_all_functions ()
    at /cvs/gcc-svn/trunk/gcc/cgraphunit.c:1164
#9  0x00000000010a77ee in cgraph_optimize ()
    at /cvs/gcc-svn/trunk/gcc/cgraphunit.c:1431
#10 0x000000000042895a in c_write_global_declarations ()
    at /cvs/gcc-svn/trunk/gcc/c-decl.c:7804
#11 0x0000000000f92b12 in compile_file ()
    at /cvs/gcc-svn/trunk/gcc/toplev.c:1003
#12 0x0000000000f94509 in do_compile () at /cvs/gcc-svn/trunk/gcc/toplev.c:1948
#13 0x0000000000f9456d in toplev_main (argc=27, argv=0x7fffff8afeb8)
    at /cvs/gcc-svn/trunk/gcc/toplev.c:1980
#14 0x00000000004b84a3 in main (argc=27, argv=0x7fffff8afeb8)
    at /cvs/gcc-svn/trunk/gcc/main.c:35
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
0x00000000004ea832 in get_use_from_ptr (use=0x2aaac2ca1bc8)
    at tree-flow-inline.h:578
578       return *(use->use);
(gdb) bt
#0  0x00000000004ea832 in get_use_from_ptr (use=0x2aaac2ca1bc8)
    at tree-flow-inline.h:578
#1  0x00000000004ed943 in verify_ssa (check_modified_stmt=1 '\001')
    at /cvs/gcc-svn/trunk/gcc/tree-ssa.c:734
#2  0x0000000000ff8228 in execute_todo (pass=0x168b6c0, flags=1,
    use_required=0 '\0') at /cvs/gcc-svn/trunk/gcc/passes.c:783
#3  0x0000000000ff8507 in execute_one_pass (pass=0x168b6c0)
[...]
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
0x0000000000df4f74 in cleanup_barriers () at /cvs/gcc-svn/trunk/gcc/jump.c:113
113           next = NEXT_INSN (insn);
(gdb) bt
#0  0x0000000000df4f74 in cleanup_barriers ()
    at /cvs/gcc-svn/trunk/gcc/jump.c:113
#1  0x00000000012feda9 in rest_of_handle_loop_optimize ()
    at /cvs/gcc-svn/trunk/gcc/loop.c:11809
#2  0x0000000000ff84b8 in execute_one_pass (pass=0x16914e0)
    at /cvs/gcc-svn/trunk/gcc/passes.c:849
#3  0x0000000000ff8577 in execute_pass_list (pass=0x16914e0)
    at /cvs/gcc-svn/trunk/gcc/passes.c:881
#4  0x0000000000ff8595 in execute_pass_list (pass=0x168fcc0)
    at /cvs/gcc-svn/trunk/gcc/passes.c:882

The memory usage is growing and growing.  Seems that we have either a
miscompilation of the stage2 compiler and/or some memory leak,

Andreas
-- 
 Andreas Jaeger, [EMAIL PROTECTED], http://www.suse.de/~aj/
  SUSE Linux Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
   GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126

Attachment: pgpYRkeA4mf3u.pgp
Description: PGP signature

Reply via email to