[Bug middle-end/33706] New: gcc_assert failure in verify_eh_edges

aj at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Tue Oct 9 06:03:00 GMT 2007


Compiling glibc on Linux/x86-64 I get a segmentation fault.

(gdb) r -fpreprocessed cache.i -quiet -dumpbase cache.c -mtune=generic
-auxbase-strip /abuild/aj/glibc/4.3/elf/cache.o -g -O2 -Wall -Winline
-Wwrite-strings -Wstrict-prototypes -std=gnu99 -version -fgnu89-inline
-fmerge-all-constants -o cache.s
Starting program:
/opt/gcc/4.3-devel/libexec/gcc/x86_64-suse-linux-gnu/4.3.0/cc1 -fpreprocessed
cache.i -quiet -dumpbase cache.c -mtune=generic -auxbase-strip
/abuild/aj/glibc/4.3/elf/cache.o -g -O2 -Wall -Winline -Wwrite-strings
-Wstrict-prototypes -std=gnu99 -version -fgnu89-inline -fmerge-all-constants -o
cache.s
GNU C (GCC) version 4.3.0 20071008 (experimental) [trunk revision 129132]
(x86_64-suse-linux-gnu)
        compiled by GNU C version 4.3.0 20071008 (experimental) [trunk revision
129132], GMP version 4.2.1, MPFR version 2.2.1.
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: 44f4e8c7ed384ee5613017e04accc06a

Program received signal SIGSEGV, Segmentation fault.
0x0000000000779930 in verify_eh_edges (stmt=0x2b8346a28800)
    at /cvs/gcc-svn/trunk/gcc/basic-block.h:673
673       gcc_assert (i.container);
(gdb) bt
#0  0x0000000000779930 in verify_eh_edges (stmt=0x2b8346a28800)
    at /cvs/gcc-svn/trunk/gcc/basic-block.h:673
#1  0x00000000007574e2 in tree_verify_flow_info () at
/cvs/gcc-svn/trunk/gcc/tree-cfg.c:4466
#2  0x00000000004dc423 in verify_flow_info () at
/cvs/gcc-svn/trunk/gcc/cfghooks.c:244
#3  0x000000000075a675 in cleanup_tree_cfg ()
    at /cvs/gcc-svn/trunk/gcc/tree-cfgcleanup.c:663
#4  0x00000000006781e5 in execute_function_todo (data=<value optimized out>)
    at /cvs/gcc-svn/trunk/gcc/passes.c:884
#5  0x0000000000677f6f in execute_todo (flags=19968682)
    at /cvs/gcc-svn/trunk/gcc/passes.c:988
#6  0x000000000067853a in execute_one_pass (pass=0x1254200)
    at /cvs/gcc-svn/trunk/gcc/passes.c:1139
#7  0x00000000006786c0 in execute_pass_list (pass=0x1254200)
    at /cvs/gcc-svn/trunk/gcc/passes.c:1170
#8  0x00000000006786d5 in execute_pass_list (pass=0x11d9ac0)
    at /cvs/gcc-svn/trunk/gcc/passes.c:1171
#9  0x0000000000678814 in execute_ipa_pass_list (pass=0x11d9a60)
    at /cvs/gcc-svn/trunk/gcc/passes.c:855
#10 0x000000000092240d in cgraph_optimize () at
/cvs/gcc-svn/trunk/gcc/cgraphunit.c:1248
#11 0x000000000041611e in c_write_global_declarations ()
    at /cvs/gcc-svn/trunk/gcc/c-decl.c:8077
#12 0x000000000073dc09 in toplev_main (argc=<value optimized out>,
    argv=<value optimized out>) at /cvs/gcc-svn/trunk/gcc/toplev.c:1052
#13 0x00002b8346253b54 in __libc_start_main () from /lib64/libc.so.6
#14 0x0000000000404009 in _start ()

(gdb) pt stmt
 <call_expr 0x2b8346a28800
    type <void_type 0x2b8345c6d750 void asm_written VOID
        align 8 symtab 0 alias set 2 canonical type 0x2b8345c6d750
        pointer_to_this <pointer_type 0x2b8345c6d820>>
    side-effects
    fn <addr_expr 0x2b8346a23a40
        type <pointer_type 0x2b83467f3270 type <function_type 0x2b83467f30d0>
            unsigned DI
            size <integer_cst 0x2b8345c50ba0 constant invariant 64>
            unit size <integer_cst 0x2b8345c50bd0 constant invariant 8>
            align 64 symtab 0 alias set -1 canonical type 0x2b83467f3340>
        constant invariant
        arg 0 <function_decl 0x2b83467f1200 __error_noreturn type
<function_type 0x2b83467f00d0>
            addressable volatile used public external decl_5 QI file
../include/bits/../../misc/bits/error.h line 32 align 8 attributes <tree_list
0x2b83467eec60> chain <function_decl 0x2b83467f1500 __error_at_line_alias>>>
    arg 0 <integer_cst 0x2b8345c6c570 type <integer_type 0x2b8345c5f5b0 int>
constant invariant 1>
    arg 1 <ssa_name 0x2b8346a2b3c0
        type <integer_type 0x2b8345c5f5b0 int sizes-gimplified asm_written
public SI
            size <integer_cst 0x2b8345c50ab0 constant invariant 32>
            unit size <integer_cst 0x2b8345c50720 constant invariant 4>
            align 32 symtab 1180196224 alias set 5 canonical type
0x2b8345c5f5b0 precision 32 min <integer_cst 0x2b8345c50a20 -2147483648> max
<integer_cst 0x2b8345c50a50 2147483647>
            pointer_to_this <pointer_type 0x2b8345c70000>>
        visited var <var_decl 0x2b8346702c60 __libc_errno.31> def_stmt
<gimple_modify_stmt 0x2b8346651780>
        version 127>
    arg 2 <ssa_name 0x2b8346a2b360
        type <pointer_type 0x2b8345c769c0 type <integer_type 0x2b8345c5f340
char>
            sizes-gimplified asm_written public unsigned DI size <integer_cst
0x2b8345c50ba0 64> unit size <integer_cst 0x2b8345c50bd0 8>
            align 64 symtab 1180449696 alias set 34 canonical type
0x2b8345c769c0
            pointer_to_this <pointer_type 0x2b83465a8340>>
        visited var <var_decl 0x2b8346702bb0 D.8371> def_stmt
<gimple_modify_stmt 0x2b8346651750>
        version 126>
    arg 3 <ssa_name 0x2b8346a2b240 type <pointer_type 0x2b8345c769c0>
        visited var <var_decl 0x2b83466a9bb0 temp_name> def_stmt
<gimple_modify_stmt 0x2b8346651690>
        version 123>
    ../include/bits/../../misc/bits/error.h:41>


-- 
           Summary: gcc_assert failure in verify_eh_edges
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: aj at gcc dot gnu dot org
 GCC build triplet: x86_64-linux-gnu
  GCC host triplet: x86_64-linux-gnu
GCC target triplet: x86_64-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33706



More information about the Gcc-bugs mailing list