This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: More CSELIB memory reduction


Jan Hubicka <jh@suse.cz> writes:

> > On Thu, 22 Jan 2004, Richard Henderson wrote:
> > > On Fri, Jan 23, 2004 at 03:06:35AM +0100, Jan Hubicka wrote:
> > >> 	* cselib.c (value_pool): New.
> > >> 	(new_cselib_val): Use pool.
> > >> 	(cselib_init): Initialize value_pool
> > >> 	(cselib_finish): Free pool.

> My plan is to wait a week with them being on mainline and if it does not
> break in some  interesting way, I will collect the patches and ask for

Unfortunately, this patch breaks mainline bootstrap on both
sparc-sun-solaris2.8 and mips-sgi-irix6.5:

$ ./xgcc -B./ -B/vol/gcc/share/sparc-sun-solaris2.8/bin/ -isystem /vol/gcc/share/sparc-sun-solaris2.8/include -isystem /vol/gcc/share/sparc-sun-solaris2.8/sys-include -L/vol/gcc/obj/gcc-3.5.0-20040123/8-gcc/gcc/../ld -O2 -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -I. -I. -I/vol/gnu/src/gcc/gcc-dist/gcc -I/vol/gnu/src/gcc/gcc-dist/gcc/. -I/vol/gnu/src/gcc/gcc-dist/gcc/../include   -g0 -finhibit-size-directive -fno-inline-functions -fno-exceptions -fno-zero-initialized-in-bss -fno-unit-at-a-time -fPIC -c /vol/gnu/src/gcc/gcc-dist/gcc/crtstuff.c -DCRT_END -o crtend.o -v -save-temps
Reading specs from ./specs
Configured with: /vol/gnu/src/gcc/gcc-dist/configure --prefix=/vol/gcc --with-local-prefix=/vol/gcc --disable-nls
Thread model: posix
gcc version 3.5.0 20040123 (experimental)
 ./cc1 -E -quiet -v -I. -I. -I/vol/gnu/src/gcc/gcc-dist/gcc -I/vol/gnu/src/gcc/gcc-dist/gcc/. -I/vol/gnu/src/gcc/gcc-dist/gcc/../include -iprefix /amnt/figaro/volumes/obj-gcc/gcc/obj.sol2/gcc-3.5.0-20040123/8-gcc/gcc/../lib/gcc/sparc-sun-solaris2.8/3.5.0/ -isystem ./include -isystem /vol/gcc/share/sparc-sun-solaris2.8/bin/include -DIN_GCC -DCRT_END -isystem /vol/gcc/share/sparc-sun-solaris2.8/include -isystem /vol/gcc/share/sparc-sun-solaris2.8/sys-include -isystem ./include /vol/gnu/src/gcc/gcc-dist/gcc/crtstuff.c -mcpu=v7 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -finhibit-size-directive -fno-inline-functions -fno-exceptions -fno-zero-initialized-in-bss -fno-unit-at-a-time -fPIC -O2 -o crtstuff.i
ignoring nonexistent directory "/vol/gcc/share/sparc-sun-solaris2.8/bin/include"
ignoring nonexistent directory "/vol/gcc/share/sparc-sun-solaris2.8/include"
ignoring nonexistent directory "/vol/gcc/share/sparc-sun-solaris2.8/sys-include"
ignoring duplicate directory "./include"
ignoring nonexistent directory "/amnt/figaro/volumes/obj-gcc/gcc/obj.sol2/gcc-3.5.0-20040123/8-gcc/gcc/../lib/gcc/sparc-sun-solaris2.8/3.5.0/include"
ignoring nonexistent directory "/vol/gcc/lib/gcc/sparc-sun-solaris2.8/3.5.0/include"
ignoring nonexistent directory "/vol/gcc/share/sparc-sun-solaris2.8/include"
ignoring duplicate directory "."
ignoring duplicate directory "/vol/gnu/src/gcc/gcc-dist/gcc/."
#include "..." search starts here:
#include <...> search starts here:
 .
 /vol/gnu/src/gcc/gcc-dist/gcc
 /vol/gnu/src/gcc/gcc-dist/gcc/../include
 ./include
 /vol/gcc/include
 /usr/include
End of search list.
 ./cc1 -fpreprocessed crtstuff.i -quiet -dumpbase crtstuff.c -mcpu=v7 -auxbase-strip crtend.o -g0 -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -version -finhibit-size-directive -fno-inline-functions -fno-exceptions -fno-zero-initialized-in-bss -fno-unit-at-a-time -fPIC -o crtstuff.s
GNU C version 3.5.0 20040123 (experimental) (sparc-sun-solaris2.8)
	compiled by GNU C version 3.5.0 20040123 (experimental).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
/vol/gnu/src/gcc/gcc-dist/gcc/crtstuff.c: In function `__do_global_ctors_aux':
/vol/gnu/src/gcc/gcc-dist/gcc/crtstuff.c:481: internal compiler error: Bus Error
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

  ok at -O0

Program received signal SIGSEGV, Segmentation fault.
0x000dc1c0 in cselib_lookup (x=0xff0a8040, mode=SImode, create=-16100828) at /vol/gnu/src/gcc/gcc-dist/gcc/cselib.c:700
(gdb) where
#0  0x000dc1c0 in cselib_lookup (x=0xff0a8040, mode=SImode, create=-16100828) at /vol/gnu/src/gcc/gcc-dist/gcc/cselib.c:700
#1  0x000ddd1c in cselib_process_insn (insn=0xff09c750) at /vol/gnu/src/gcc/gcc-dist/gcc/cselib.c:1281
#2  0x001865dc in one_cprop_pass (pass=1, cprop_jumps=0, bypass_jumps=0) at /vol/gnu/src/gcc/gcc-dist/gcc/gcse.c:4446
#3  0x0018c000 in gcse_main (f=0xff09c630, file=0x0) at /vol/gnu/src/gcc/gcc-dist/gcc/gcse.c:789
#4  0x0027a224 in rest_of_handle_gcse (decl=0x0, insns=0xff09c630) at /vol/gnu/src/gcc/gcc-dist/gcc/toplev.c:2931
#5  0x0027ab94 in rest_of_compilation (decl=0xff0a4f80) at /vol/gnu/src/gcc/gcc-dist/gcc/toplev.c:3302
#6  0x002c02c4 in tree_rest_of_compilation (fndecl=0xff0a4f80, nested_p=false) at /vol/gnu/src/gcc/gcc-dist/gcc/tree-optimize.c:168
#7  0x0005bed8 in c_expand_body_1 (fndecl=0xff0a4f80, nested_p=0) at /vol/gnu/src/gcc/gcc-dist/gcc/c-decl.c:6124
#8  0x002c21f0 in cgraph_expand_function (node=0xff0a5180) at /vol/gnu/src/gcc/gcc-dist/gcc/cgraphunit.c:527
#9  0x002c22ec in cgraph_assemble_pending_functions () at /vol/gnu/src/gcc/gcc-dist/gcc/cgraphunit.c:143
#10 0x002c3424 in cgraph_finalize_function (decl=0xff0a4f80, nested=false) at /vol/gnu/src/gcc/gcc-dist/gcc/cgraphunit.c:224
#11 0x0005c398 in finish_function () at /vol/gnu/src/gcc/gcc-dist/gcc/c-decl.c:6081
#12 0x000403a8 in yyparse () at c-parse.y:386
#13 0x0004318c in c_parse_file () at c-parse.y:3040
#14 0x0008c240 in c_common_parse_file (set_yydebug=1) at /vol/gnu/src/gcc/gcc-dist/gcc/c-opts.c:1216
#15 0x0027d5fc in toplev_main (argc=4038656, argv=0x3da000) at /vol/gnu/src/gcc/gcc-dist/gcc/toplev.c:1806

  same on mips-sgi-irix6.5:

./xgcc -B./ -B/.vol/gcc/share/mips-sgi-irix6.5/bin/ -isystem /.vol/gcc/share/mips-sgi-irix6.5/include -isystem /.vol/gcc/share/mips-sgi-irix6.5/sys-include -L/.vol/gcc/obj/gcc-3.5.0-20040123/6.5-gcc-java/gcc/../ld -O2  -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include   -g  -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I. -I/.vol/gcc/src/gcc-dist/gcc -I/.vol/gcc/src/gcc-dist/gcc/. -I/.vol/gcc/src/gcc-dist/gcc/../include   -DL_ucmpdi2 -c /.vol/gcc/src/gcc-dist/gcc/libgcc2.c -o libgcc/./_ucmpdi2.o -v -save-temps
Reading specs from ./specs
Configured with: /.vol/gcc/src/gcc-dist/configure --prefix=/.vol/gcc --with-local-prefix=/.vol/gcc --disable-nls --enable-libgcj
Thread model: single
gcc version 3.5.0 20040123 (experimental)
 ./cc1 -E -quiet -v -I. -I. -I/.vol/gcc/src/gcc-dist/gcc -I/.vol/gcc/src/gcc-dist/gcc/. -I/.vol/gcc/src/gcc-dist/gcc/../include -iprefix /.vol/gcc/obj/gcc-3.5.0-20040123/6.5-gcc-java/gcc/../lib/gcc/mips-sgi-irix6.5/3.5.0/ -isystem ./include -isystem /.vol/gcc/share/mips-sgi-irix6.5/bin/include -DIN_GCC -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -DL_ucmpdi2 -isystem /.vol/gcc/share/mips-sgi-irix6.5/include -isystem /.vol/gcc/share/mips-sgi-irix6.5/sys-include -isystem ./include /.vol/gcc/src/gcc-dist/gcc/libgcc2.c -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -fworking-directory -O2 -o libgcc2.i
ignoring nonexistent directory "/.vol/gcc/share/mips-sgi-irix6.5/bin/include"
ignoring nonexistent directory "/.vol/gcc/share/mips-sgi-irix6.5/include"
ignoring nonexistent directory "/.vol/gcc/share/mips-sgi-irix6.5/sys-include"
ignoring duplicate directory "./include"
ignoring nonexistent directory "/.vol/gcc/obj/gcc-3.5.0-20040123/6.5-gcc-java/gcc/../lib/gcc/mips-sgi-irix6.5/3.5.0/include"
ignoring nonexistent directory "/.vol/gcc/include"
ignoring nonexistent directory "/.vol/gcc/lib/gcc/mips-sgi-irix6.5/3.5.0/include"
ignoring nonexistent directory "/.vol/gcc/share/mips-sgi-irix6.5/include"
ignoring duplicate directory "."
ignoring duplicate directory "/.vol/gcc/src/gcc-dist/gcc/."
#include "..." search starts here:
#include <...> search starts here:
 .
 /.vol/gcc/src/gcc-dist/gcc
 /.vol/gcc/src/gcc-dist/gcc/../include
 ./include
 /usr/include
End of search list.
 ./cc1 -fpreprocessed libgcc2.i -quiet -dumpbase libgcc2.c -auxbase-strip libgcc/./_ucmpdi2.o -g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -version -o libgcc2.s
GNU C version 3.5.0 20040123 (experimental) (mips-sgi-irix6.5)
	compiled by GNU C version 3.4 20031030 (experimental).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
/.vol/gcc/src/gcc-dist/gcc/libgcc2.c: In function `__ucmpdi2':
/.vol/gcc/src/gcc-dist/gcc/libgcc2.c:1100: internal compiler error: Bus error
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

  again vanishes at -O0

Program received signal SIGSEGV, Segmentation fault.
0x1051a514 in entry_and_rtx_equal_p (entry=0x1077698c, x_arg=0x4180080)
    at /.vol/gcc/src/gcc-dist/gcc/cselib.c:241
(gdb) where
#0  0x1051a514 in entry_and_rtx_equal_p (entry=0x1077698c, x_arg=0x4180080)
    at /.vol/gcc/src/gcc-dist/gcc/cselib.c:241
#1  0x105f4580 in htab_find_slot_with_hash (htab=0x4000780, element=0x4180080, 
    hash=8650, insert=INSERT) at /.vol/gcc/src/gcc-dist/libiberty/hashtab.c:511
#2  0x1051cd78 in cselib_lookup (x=0x4018400, mode=DImode, create=1)
    at /.vol/gcc/src/gcc-dist/gcc/cselib.c:931
#3  0x1051de54 in cselib_record_sets (insn=0x4162fa0)
    at /.vol/gcc/src/gcc-dist/gcc/cselib.c:1281
#4  0x1051e310 in cselib_process_insn (insn=0x4162fa0)
    at /.vol/gcc/src/gcc-dist/gcc/cselib.c:1348
#5  0x10412a2c in local_cprop_pass (alter_jumps=0)
    at /.vol/gcc/src/gcc-dist/gcc/gcse.c:4446
#6  0x10413458 in one_cprop_pass (pass=1, cprop_jumps=0, bypass_jumps=0)
    at /.vol/gcc/src/gcc-dist/gcc/gcse.c:4662
#7  0x1040740c in gcse_main (f=0x4162dc0, file=0x0)
    at /.vol/gcc/src/gcc-dist/gcc/gcse.c:789
#8  0x1014613c in rest_of_handle_gcse (decl=0x416bd80, insns=0x4162dc0)
    at /.vol/gcc/src/gcc-dist/gcc/toplev.c:2931
#9  0x1014718c in rest_of_compilation (decl=0x416bd80)
    at /.vol/gcc/src/gcc-dist/gcc/toplev.c:3302
#10 0x1050e6dc in tree_rest_of_compilation (fndecl=0x416bd80, nested_p=false)
    at /.vol/gcc/src/gcc-dist/gcc/tree-optimize.c:168
#11 0x1007ca54 in c_expand_body_1 (fndecl=0x416bd80, nested_p=0)
    at /.vol/gcc/src/gcc-dist/gcc/c-decl.c:6124
#12 0x1007ce4c in c_expand_body (fndecl=0x416bd80)
    at /.vol/gcc/src/gcc-dist/gcc/c-decl.c:6156
#13 0x105a801c in cgraph_expand_function (node=0x4176e00)
    at /.vol/gcc/src/gcc-dist/gcc/cgraphunit.c:527
#14 0x105ab98c in cgraph_expand_all_functions ()
    at /.vol/gcc/src/gcc-dist/gcc/cgraphunit.c:1531
#15 0x105abcf4 in cgraph_optimize ()
    at /.vol/gcc/src/gcc-dist/gcc/cgraphunit.c:1596
#16 0x100f6794 in c_objc_common_finish_file ()
    at /.vol/gcc/src/gcc-dist/gcc/c-objc-common.c:245
#17 0x1004899c in finish_file () at /.vol/gcc/src/gcc-dist/gcc/c-lang.c:185
#18 0x100df338 in c_common_parse_file (set_yydebug=0)
    at /.vol/gcc/src/gcc-dist/gcc/c-opts.c:1222
#19 0x10142af4 in compile_file () at /.vol/gcc/src/gcc-dist/gcc/toplev.c:1806
#20 0x1014a860 in do_compile () at /.vol/gcc/src/gcc-dist/gcc/toplev.c:4629
#21 0x1014a984 in toplev_main (argc=19, argv=0x7ffb7f04)
    at /.vol/gcc/src/gcc-dist/gcc/toplev.c:4669
#22 0x100fb164 in main (argc=19, argv=0x7ffb7f04)
    at /.vol/gcc/src/gcc-dist/gcc/main.c:35

Backing it out allows bootstrap to continue on both platforms.

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]