[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #14 from ebotcazou at gcc dot gnu dot org 2010-09-22 10:19 --- *** Bug 39277 has been marked as a duplicate of this bug. *** -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added CC||Michael dot Finken at me dot ||com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #13 from ro at gcc dot gnu dot org 2010-05-20 12:10 --- Fixed for 4.4.5, 4.5.1, 4.6.0. -- ro at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Known to work||4.4.5 4.5.1 4.6.0 Resolution||FIXED Target Milestone|--- |4.5.1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #12 from ro at gcc dot gnu dot org 2010-05-20 12:08 --- Subject: Bug 43870 Author: ro Date: Thu May 20 12:08:34 2010 New Revision: 159627 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159627 Log: PR bootstrap/43870 * df-scan.c (df_ref_compare): Stabilize sort. Modified: branches/gcc-4_4-branch/gcc/ChangeLog branches/gcc-4_4-branch/gcc/df-scan.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #11 from ro at gcc dot gnu dot org 2010-05-20 12:07 --- Subject: Bug 43870 Author: ro Date: Thu May 20 12:07:23 2010 New Revision: 159626 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159626 Log: PR bootstrap/43870 * df-scan.c (df_ref_compare): Stabilize sort. Modified: branches/gcc-4_5-branch/gcc/ChangeLog branches/gcc-4_5-branch/gcc/df-scan.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #10 from ro at gcc dot gnu dot org 2010-05-20 12:06 --- Subject: Bug 43870 Author: ro Date: Thu May 20 12:05:54 2010 New Revision: 159625 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159625 Log: PR bootstrap/43870 * df-scan.c (df_ref_compare): Stabilize sort. Modified: trunk/gcc/ChangeLog trunk/gcc/df-scan.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #9 from ro at CeBiTec dot Uni-Bielefeld dot DE 2010-05-19 14:07 --- Subject: Re: ICE in gcc/config/soft-fp/divtf3.c > --- Comment #8 from zadeck at naturalbridge dot com 2010-05-19 14:06 > --- > df maintainers cannot approve their own patches. you should get bonzini or > any other back end maintainer to approve it. Understood: all I meant was that the ChangeLog entry would name you as the patch author. > thanks for doing the testing. Thanks for the blazingly fast response. Rainer -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #8 from zadeck at naturalbridge dot com 2010-05-19 14:06 --- df maintainers cannot approve their own patches. you should get bonzini or any other back end maintainer to approve it. thanks for doing the testing. kenny -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #7 from ro at CeBiTec dot Uni-Bielefeld dot DE 2010-05-19 14:03 --- Subject: Re: ICE in gcc/config/soft-fp/divtf3.c > --- Comment #6 from zadeck at naturalbridge dot com 2010-05-19 13:41 > --- > I have a deadline and do not have time to play with this. The comparison > function in df-scan.c, df_ref_compare, is not stable according to what has > been > discussed in pr42157. however, it does satisfy the definition of qsort in > the > linux manuals. I've no idea if the Solaris 8 (and IRIX 5) qsort violates ISO C90 here. > if you need it to be that stable for those platforms, then change the last > line > of df_ref_compare from "return 0;" to be > > return (int)DF_REF_ORDER (ref1) - (int)DF_REF_ORDER (ref2); Thanks, that's all I needed: bootstrap is past the ICE in the stage1 libgcc now, I'll let if finish and submit the patch, attributed to you, once testing is complete. Rainer -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #6 from zadeck at naturalbridge dot com 2010-05-19 13:41 --- I have a deadline and do not have time to play with this. The comparison function in df-scan.c, df_ref_compare, is not stable according to what has been discussed in pr42157. however, it does satisfy the definition of qsort in the linux manuals. if you need it to be that stable for those platforms, then change the last line of df_ref_compare from "return 0;" to be return (int)DF_REF_ORDER (ref1) - (int)DF_REF_ORDER (ref2); -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #5 from ro at gcc dot gnu dot org 2010-05-19 13:04 --- Happens for me, too. Kenneth, as the author of this code, could you have a look? Thanks. Rainer -- ro at gcc dot gnu dot org changed: What|Removed |Added CC||Kenneth dot Zadeck at ||NaturalBridge dot com Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2010-05-19 13:04:34 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #4 from ro at CeBiTec dot Uni-Bielefeld dot DE 2010-04-28 17:51 --- Subject: Re: ICE in gcc/config/soft-fp/divtf3.c "gcc-tgc at jupiterrise dot com" writes: > Program received signal SIGSEGV, Segmentation fault. > 0x084bd3c5 in df_ref_compare (r1=0xa3278a4, r2=0xa3278ac) at > /export/home/tgc/source/gcc-4.5.0/gcc/df-scan.c:2357 > 2357 if (DF_REF_CLASS (ref1) != DF_REF_CLASS (ref2)) > (gdb) bt > #0 0x084bd3c5 in df_ref_compare (r1=0xa3278a4, r2=0xa3278ac) at > /export/home/tgc/source/gcc-4.5.0/gcc/df-scan.c:2357 > #1 0xdf89b889 in qsort () from /usr/lib/libc.so.1 This is most likely another instance of the qsort problem that has already bitten us in PR tree-optimization/42157. Rainer -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #3 from gcc-tgc at jupiterrise dot com 2010-04-25 09:34 --- $ gdb --args /export/home/tgc/build/gcc450_all_native/./gcc/cc1 -fpreprocessed divtf3.i -quiet -dumpbase divtf3.c -mtune=generic -march=pentium4 -auxbase-strip divtf3.o -g -g -g -O2 -O2 -O2 -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wold-style-definition -Wno-missing-prototypes -Wno-type-limits -version -fPIC -fexceptions -o divtf3.s GNU gdb 6.6 Copyright (C) 2006 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-pc-solaris2.8"... (gdb) break fancy_abort Breakpoint 1 at 0x84c5bc4: file /export/home/tgc/source/gcc-4.5.0/gcc/diagnostic.c, line 763. (gdb) run Starting program: /export/home/tgc/build/gcc450_all_native/gcc/cc1 -fpreprocessed divtf3.i -quiet -dumpbase divtf3.c -mtune=generic -march=pentium4 -auxbase-strip divtf3.o -g -g -g -O2 -O2 -O2 -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wold-style-definition -Wno-missing-prototypes -Wno-type-limits -version -fPIC -fexceptions -o divtf3.s warning: Temporarily disabling breakpoints for unloaded shared library "/usr/lib/ld.so.1" GNU C (GCC) version 4.5.0 (i386-pc-solaris2.8) compiled by GNU C version 4.3.4, GMP version 5.0.1, MPFR version 2.4.2, MPC version 0.8.1 GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 GNU C (GCC) version 4.5.0 (i386-pc-solaris2.8) compiled by GNU C version 4.3.4, GMP version 5.0.1, MPFR version 2.4.2, MPC version 0.8.1 GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: 69cf92c491c71b15695da53015b23e3b /export/home/tgc/source/gcc-4.5.0/libgcc/../gcc/config/soft-fp/divtf3.c: In function '__divtf3': /export/home/tgc/source/gcc-4.5.0/libgcc/../gcc/config/soft-fp/divtf3.c:38:169: warning: 'R_e' may be used uninitialized in this function Program received signal SIGSEGV, Segmentation fault. 0x084bd3c5 in df_ref_compare (r1=0xa3278a4, r2=0xa3278ac) at /export/home/tgc/source/gcc-4.5.0/gcc/df-scan.c:2357 2357 if (DF_REF_CLASS (ref1) != DF_REF_CLASS (ref2)) (gdb) bt #0 0x084bd3c5 in df_ref_compare (r1=0xa3278a4, r2=0xa3278ac) at /export/home/tgc/source/gcc-4.5.0/gcc/df-scan.c:2357 #1 0xdf89b889 in qsort () from /usr/lib/libc.so.1 #2 0x084bd8e2 in df_sort_and_compress_refs (ref_vec=0x8047678) at /export/home/tgc/source/gcc-4.5.0/gcc/df-scan.c:2449 #3 0x084be0cb in df_canonize_collection_rec (collection_rec=0x8047674) at /export/home/tgc/source/gcc-4.5.0/gcc/df-scan.c:2581 #4 0x084bfd2b in df_insn_refs_collect (collection_rec=0x8047674, bb=0xdf5f7e40, insn_info=0xa2b93ec) at /export/home/tgc/source/gcc-4.5.0/gcc/df-scan.c:3589 #5 0x084c035a in df_bb_refs_record (bb_index=89, scan_insns=1 '\001') at /export/home/tgc/source/gcc-4.5.0/gcc/df-scan.c:3728 #6 0x084b9dce in df_scan_blocks () at /export/home/tgc/source/gcc-4.5.0/gcc/df-scan.c:702 #7 0x08497012 in rest_of_handle_df_initialize () at /export/home/tgc/source/gcc-4.5.0/gcc/df-core.c:739 #8 0x0898b161 in execute_one_pass (pass=0xa137580) at /export/home/tgc/source/gcc-4.5.0/gcc/passes.c:1568 #9 0x0898b340 in execute_pass_list (pass=0xa137580) at /export/home/tgc/source/gcc-4.5.0/gcc/passes.c:1623 #10 0x0898b360 in execute_pass_list (pass=0xa1c40c0) at /export/home/tgc/source/gcc-4.5.0/gcc/passes.c:1624 #11 0x08e5878c in tree_rest_of_compilation (fndecl=0xdf7bb880) at /export/home/tgc/source/gcc-4.5.0/gcc/tree-optimize.c:413 #12 0x0965ac8e in cgraph_expand_function (node=0xdf7cc170) at /export/home/tgc/source/gcc-4.5.0/gcc/cgraphunit.c:1548 #13 0x0965aeec in cgraph_expand_all_functions () at /export/home/tgc/source/gcc-4.5.0/gcc/cgraphunit.c:1627 #14 0x0965b4da in cgraph_optimize () at /export/home/tgc/source/gcc-4.5.0/gcc/cgraphunit.c:1875 #15 0x09659584 in cgraph_finalize_compilation_unit () at /export/home/tgc/source/gcc-4.5.0/gcc/cgraphunit.c:1096 #16 0x0811c18b in c_write_global_declarations () at /export/home/tgc/source/gcc-4.5.0/gcc/c-decl.c:9519 #17 0x08c28bb5 in compile_file () at /export/home/tgc/source/gcc-4.5.0/gcc/toplev.c:1065 #18 0x08c2abea in do_compile () at /export/home/tgc/source/gcc-4.5.0/gcc/toplev.c:2417 #19 0x08c2acb7 in toplev_main (argc=29, argv=0x8047948) at /export/home/tgc/source/gcc-4.5.0/gcc/toplev.c:2459 #20 0x0829301f in main (argc=Cannot access memory at address 0x2 ) at /export/home/tgc/source/gcc-4.5.0/gcc/main.c:35 (gdb) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #2 from ubizjak at gmail dot com 2010-04-25 07:37 --- The attached source does not fail for x86_64-linux target. Can you try to run the compilation through the debugger to provide a backtrace? Follow this procedure: gdb --args /path/to/gcc/cc1 [...flags...] -quiet source.i [...] (gdb) break fancy_abort [...] (gdb) run [...] (gdb) bt It looks that the failure is solaris specific, CC added. -- ubizjak at gmail dot com changed: What|Removed |Added CC||ro at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870
[Bug bootstrap/43870] ICE in gcc/config/soft-fp/divtf3.c
--- Comment #1 from gcc-tgc at jupiterrise dot com 2010-04-23 18:58 --- Created an attachment (id=20475) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20475&action=view) Preprocessed source -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43870