From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9917 invoked by alias); 27 May 2004 09:38:34 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 9857 invoked by alias); 27 May 2004 09:38:30 -0000 Date: Thu, 27 May 2004 19:12:00 -0000 Message-ID: <20040527093830.9856.qmail@sourceware.org> From: "rguenth at tat dot physik dot uni-tuebingen dot de" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20040321182857.14671.danglin@gcc.gnu.org> References: <20040321182857.14671.danglin@gcc.gnu.org> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug bootstrap/14671] [3.3/3.4 regression] caller-save.c:491: internal compiler error: Segmentation fault X-Bugzilla-Reason: CC X-SW-Source: 2004-05/txt/msg03192.txt.bz2 List-Id: ------- Additional Comments From rguenth at tat dot physik dot uni-tuebingen dot de 2004-05-27 09:38 ------- Subject: Re: [3.3/3.4 regression] caller-save.c:491: internal compiler error: Segmentation fault On Thu, 27 May 2004, gdr at integrable-solutions dot net wrote: > > ------- Additional Comments From gdr at integrable-solutions dot net 2004-05-27 03:55 ------- > Subject: Re: [3.3/3.4 regression] caller-save.c:491: internal compiler error: Segmentation fault > > "pinskia at physics dot uc dot edu" writes: > > | Subject: Re: [3.3/3.4 regression] caller-save.c:491: internal compiler error: Segmentation fault > | > | > | On May 26, 2004, at 23:38, dave at hiauly1 dot hia dot nrc dot ca wrote: > | > | > If you look at the comment in ggc-page.c for lookup_page_table_entry, > | > you will see that it says "Die (probably) if the object wasn't > | > allocated > | > via GC." The patch in question didn't create the object that caused > | > the ICE. Thus, as I indicated previously, more information is needed > | > about the object that caused the ICE, and how and when it was added > | > to the alias_invariant array. > | > | > Richard has indicated that the regression isn't present on 3.4, yet it > | > has essentially the same change. If we revert this on 3.5, the pa and > | > alpha won't build. The build problems are critical for these ports. > | > | > | I think this was fixed lately on the mainline fully by: > | . > > Andrew -- > > Thanks for the detective work. > > | Could someone test the backport of this patch, ggc_free can be safely > | removed as it is an optimization > > Richard -- > Can you try that? If it works, I'll apply it immediately, plus > Eric's patch. Whic I suppose would resolve this very interesting > issue. It doesn't solve the problem. Now it ICEs even compiling the library itself: rguenth@alwazn r2 $ g++-3.3 -c /net/bellatrix/home/rguenth/src/pooma-bk/r2/src/IO/DiskLayout.cmpl.cpp -o /net/bellatrix/home/rguenth/src/pooma-bk/r2/src/IO/LINUXgcc33a/DiskLayout.cmpl.o -ftemplate-depth-60 -fno-exceptions -Drestrict=__restrict__ -O2 -funroll-loops -g -I/net/bellatrix/home/rguenth/src/pooma-bk/r2/src -I/net/bellatrix/home/rguenth/src/pooma-bk/r2/lib/LINUXgcc33a -v Reading specs from /net/bellatrix/home/rguenth/ix86/gcc3.3-270504/bin/../lib/gcc-lib/i686-pc-linux-gnu/3.3.4/specs Configured with: /home/rguenth/src/gcc/gcc3.3/configure --prefix=/home/rguenth/ix86/gcc3.3-270504 --enable-languages=c,c++,f77 --enable-threads=posix --enable-__cxa_atexit --disable-libunwind-exceptions --disable-checking Thread model: posix gcc version 3.3.4 20040527 (prerelease) /net/bellatrix/home/rguenth/ix86/gcc3.3-270504/bin/../lib/gcc-lib/i686-pc-linux-gnu/3.3.4/cc1plus -quiet -v -I/net/bellatrix/home/rguenth/src/pooma-bk/r2/src -I/net/bellatrix/home/rguenth/src/pooma-bk/r2/lib/LINUXgcc33a -iprefix /net/bellatrix/home/rguenth/ix86/gcc3.3-270504/bin/../lib/gcc-lib/i686-pc-linux-gnu/3.3.4/ -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=4 -D_GNU_SOURCE -Drestrict=__restrict__ /net/bellatrix/home/rguenth/src/pooma-bk/r2/src/IO/DiskLayout.cmpl.cpp -D__GNUG__=3 -quiet -dumpbase DiskLayout.cmpl.cpp -auxbase-strip /net/bellatrix/home/rguenth/src/pooma-bk/r2/src/IO/LINUXgcc33a/DiskLayout.cmpl.o -g -O2 -version -ftemplate-depth-60 -fno-exceptions -funroll-loops -o /tmp/cc4cbxod.s GNU C++ version 3.3.4 20040527 (prerelease) (i686-pc-linux-gnu) compiled by GNU C version 3.3.4 20040527 (prerelease). GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 ... /net/bellatrix/home/rguenth/ix86/gcc3.3-270504/include/c++/3.3.4/bits/vector.tcc: In member function `void std::vector<_Tp, _Alloc>::_M_insert_aux(__gnu_cxx::__normal_iterator<_Tp*, std::vector<_Tp, _Alloc> >, const _Tp&) [with _Tp = Observer >*, _Alloc = std::allocator >*>]': /net/bellatrix/home/rguenth/ix86/gcc3.3-270504/include/c++/3.3.4/bits/stl_vector.h:603: instantiated from `void std::vector<_Tp, _Alloc>::push_back(const _Tp&) [with _Tp = Observer >*, _Alloc = std::allocator >*>]' /net/bellatrix/home/rguenth/src/pooma-bk/r2/src/IO/DiskLayout.cmpl.cpp:172: instantiated from `bool DiskLayout::checkLayout() [with int Dim = 3]' /net/bellatrix/home/rguenth/src/pooma-bk/r2/src/IO/DiskLayout.cmpl.cpp:391: instantiated from here /net/bellatrix/home/rguenth/ix86/gcc3.3-270504/include/c++/3.3.4/bits/vector.tcc:257: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See for instructions. within gdb its now (look at the invalid pointers passed as args everywhere): Program received signal SIGSEGV, Segmentation fault. 0x080dabd1 in memrefs_conflict_p (xsize=4, x=0x26e, ysize=4, y=0x4d5ce960, c=4) at /home/rguenth/src/gcc/gcc3.3/gcc/alias.c:1634 1634 { (gdb) bt #0 0x080dabd1 in memrefs_conflict_p (xsize=4, x=0x26e, ysize=4, y=0x4d5ce960, c=4) at /home/rguenth/src/gcc/gcc3.3/gcc/alias.c:1634 #1 0x080db011 in memrefs_conflict_p (xsize=4, x=0x4d84aad4, ysize=4, y=0x4d5ce960, c=4) at /home/rguenth/src/gcc/gcc3.3/gcc/alias.c:1755 #2 0x080dbf17 in write_dependence_p (mem=0x4d84ac00, x=0x4d5ceb4c, writep=0) at /home/rguenth/src/gcc/gcc3.3/gcc/alias.c:2344 #3 0x080dbfd0 in anti_dependence (mem=0x4, x=0x4) at /home/rguenth/src/gcc/gcc3.3/gcc/alias.c:2363 #4 0x080fbd7c in cselib_mem_conflict_p (mem_base=0x4d5ceb4c, val=0x4d84ac00) at /home/rguenth/src/gcc/gcc3.3/gcc/cselib.c:1053 #5 0x080fbe7c in cselib_invalidate_mem_1 (slot=0x4, info=0x4d5ceb4c) at /home/rguenth/src/gcc/gcc3.3/gcc/cselib.c:1133 #6 0x082ff2bf in htab_traverse (htab=0x49233ec8, callback=0x80fbe10 , info=0x4d5ceb4c) at /home/rguenth/src/gcc/gcc3.3/libiberty/hashtab.c:548 #7 0x080fbee2 in cselib_invalidate_mem (mem_rtx=0x4) at /home/rguenth/src/gcc/gcc3.3/gcc/cselib.c:1143 #8 0x080fbf4b in cselib_invalidate_rtx (dest=0x4d5ceb4c, ignore=0x4d5ceb7c, data=0x0) at /home/rguenth/src/gcc/gcc3.3/gcc/cselib.c:1163 #9 0x0824a179 in note_stores (x=0x4d5ceb7c, fun=0x80fbef0 , data=0x0) at /home/rguenth/src/gcc/gcc3.3/gcc/rtlanal.c:1639 #10 0x080fc1d9 in cselib_record_sets (insn=0x4) ---Type to continue, or q to quit--- at /home/rguenth/src/gcc/gcc3.3/gcc/cselib.c:1296 #11 0x080fc406 in cselib_process_insn (insn=0x48c46108) at /home/rguenth/src/gcc/gcc3.3/gcc/cselib.c:1353 #12 0x0815c414 in local_cprop_pass (alter_jumps=1) at /home/rguenth/src/gcc/gcc3.3/gcc/gcse.c:4488 #13 0x0815c689 in one_cprop_pass (pass=4, alter_jumps=1) at /home/rguenth/src/gcc/gcc3.3/gcc/gcse.c:4562 #14 0x081578d7 in gcse_main (f=0x48c1ddc0, file=0x0) at /home/rguenth/src/gcc/gcc3.3/gcc/gcse.c:895 #15 0x08263cdd in rest_of_compilation (decl=0x4a637620) at /home/rguenth/src/gcc/gcc3.3/gcc/toplev.c:2874 #16 0x080b908e in genrtl_finish_function (fn=0x4a637620) at /home/rguenth/src/gcc/gcc3.3/gcc/cp/semantics.c:2589 #17 0x080b8dbd in expand_body (fn=0x4a637620) at /home/rguenth/src/gcc/gcc3.3/gcc/cp/semantics.c:2412 #18 0x08077688 in instantiate_decl (d=0x0, defer_ok=0) at /home/rguenth/src/gcc/gcc3.3/gcc/cp/pt.c:10578 #19 0x080779d0 in instantiate_pending_templates () at /home/rguenth/src/gcc/gcc3.3/gcc/cp/pt.c:10655 #20 0x08087abf in finish_file () at /home/rguenth/src/gcc/gcc3.3/gcc/cp/decl2.c:2807 #21 0x08091dac in yyparse () at parse.y:489 #22 0x080d36e9 in c_common_parse_file (set_yydebug=4) ---Type to continue, or q to quit--- at /home/rguenth/src/gcc/gcc3.3/gcc/c-lex.c:159 #23 0x08261f5a in compile_file () at /home/rguenth/src/gcc/gcc3.3/gcc/toplev.c:2130 #24 0x082670e7 in do_compile () at /home/rguenth/src/gcc/gcc3.3/gcc/toplev.c:5414 #25 0x0826717b in toplev_main (argc=4, argv=0x0) at /home/rguenth/src/gcc/gcc3.3/gcc/toplev.c:5444 #26 0x080d93cb in main (argc=4, argv=0x4) at /home/rguenth/src/gcc/gcc3.3/gcc/main.c:35 #27 0x4003a8ae in __libc_start_main () from /lib/libc.so.6 (gdb) up 11 #11 0x080fc406 in cselib_process_insn (insn=0x48c46108) at /home/rguenth/src/gcc/gcc3.3/gcc/cselib.c:1353 1353 cselib_record_sets (insn); (gdb) call debug_rtx(insn) (insn 50 49 56 2 0x48cca02c (set (mem:SI (reg:SI 63) [664 S4 A32]) (reg:SI 72)) 38 {*movsi_1} (nil) (nil)) (gdb) down 1 #10 0x080fc1d9 in cselib_record_sets (insn=0x4) at /home/rguenth/src/gcc/gcc3.3/gcc/cselib.c:1296 1296 note_stores (body, cselib_invalidate_rtx, NULL); (gdb) print insn $2 = 0x4 (gdb) call debug_rtx(body) (set (mem:SI (reg:SI 63) [664 S4 A32]) (reg:SI 72)) (gdb) down 2 #8 0x080fbf4b in cselib_invalidate_rtx (dest=0x4d5ceb4c, ignore=0x4d5ceb7c, data=0x0) at /home/rguenth/src/gcc/gcc3.3/gcc/cselib.c:1163 1163 cselib_invalidate_mem (dest); (gdb) call debug_rtx(dest) (mem:SI (reg:SI 63) [664 S4 A32]) not that I can make any sense out of the above. Note that the testcase at http://www.tat.physik.uni-tuebingen.de/~rguenth/gmp_test4.ii.gz still "works" to reproduce also the above ICE. Anything else to test? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14671