This is the mail archive of the gcc-bugs@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]

[Bug middle-end/15666] [3.4 regression] [unit-at-a-time] Gcc abort on valid code


------- Additional Comments From hjl at lucon dot org  2004-05-31 05:56 -------
Starting program: /export/build/gnu/gcc-3.4/build-pentium4-linux/gcc/cc1 -
fpreprocessed foo.i -quiet -dumpbase foo.i -mtune=pentiumpro -auxbase foo -O2 -
version -o foo.s
GNU C version 3.4.1 20040529 (prerelease) (i686-pc-linux-gnu)
        compiled by GNU C version 3.4.1 20040529 (prerelease).
GGC heuristics: --param ggc-min-expand=63 --param ggc-min-heapsize=62888

Breakpoint 1, cgraph_node (decl=0xb766dd80)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/cgraph.c:101
101       if (TREE_CODE (decl) != FUNCTION_DECL)
 <function_decl 0xb766dd80 __builtin_strchr
    type <function_type 0xb766b948
        type <pointer_type 0xb76a3ec4 type <integer_type 0xb769c360 char>
            unsigned SI
            size <integer_cst 0xb769a7d0 constant 32>
            unit size <integer_cst 0xb769a820 constant 4>
            align 32 symtab 0 alias set -1>
        DI
        size <integer_cst 0xb769a5a0 constant 64>
        unit size <integer_cst 0xb769a794 constant 8>
        align 64 symtab 0 alias set -1
        attributes <tree_list 0xb7668c58
            purpose <identifier_node 0xb76873c0 nonnull>
            value <tree_list 0xb768b780
                value <integer_cst 0xb768b76c constant 1>>>
        arg-types <tree_list 0xb7684b18 value <pointer_type 0xb7686bd0>
            chain <tree_list 0xb7684b04 value <integer_type 0xb769c4a4 int>
                chain <tree_list 0xb768467c value <void_type 0xb76a3870 
void>>>>
        pointer_to_this <pointer_type 0xb75f057c>>
    used nothrow public external built-in QI file <internal> line 0
    built-in BUILT_IN_NORMAL:BUILT_IN_STRCHR context <translation_unit_decl 
0xb769c144> attributes <tree_list 0xb766e0b4>
    (mem:QI (symbol_ref:SI ("strchr") [flags 0x41] <function_decl 0xb766dd80 
__builtin_strchr>) [0 S1 A8]) chain <function_decl 0xb766de58 strchr>>
(gdb) bt
#0  cgraph_node (decl=0xb766dd80)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/cgraph.c:101
#1  0x082a6d48 in cgraph_rtl_info (decl=0xb766dd80)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/cgraph.c:364
#2  0x080a9468 in flags_from_decl_or_type (exp=0xb766dd80)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/calls.c:706
#3  0x080a94ee in call_expr_flags (t=0xb76a12b8)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/calls.c:763
#4  0x08272012 in build (code=CALL_EXPR, tt=0x1e)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/tree.c:2391
#5  0x0806865a in build_function_call (function=0xb7657e4c, params=0xb7657e24)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/c-typeck.c:1762
#6  0x0804c0b6 in yyparse () at c-parse.y:642
#7  0x0804f9bb in c_parse_file () at c-parse.y:3028
#8  0x0807e969 in c_common_parse_file (set_yydebug=30)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/c-opts.c:1237
#9  0x0826eaad in toplev_main (argc=30, argv=0xbfffdcbc)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/toplev.c:1822
#10 0x0809821e in main (argc=30, argv=0x1e)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/main.c:35
(gdb) call decl_assembler_name (decl)
$1 = (union tree_node *) 0xb766c880
(gdb) call debug_tree(0xb766c880)
 <identifier_node 0xb766c880 strchr
    symbol <function_decl 0xb766de58 strchr
        type <function_type 0xb766b948 type <pointer_type 0xb76a3ec4>
            DI
            size <integer_cst 0xb769a5a0 constant 64>
            unit size <integer_cst 0xb769a794 constant 8>
            align 64 symtab 0 alias set -1
            attributes <tree_list 0xb7668c58
                purpose <identifier_node 0xb76873c0 nonnull>
                value <tree_list 0xb768b780
                    value <integer_cst 0xb768b76c constant 1>>>
            arg-types <tree_list 0xb7684b18 value <pointer_type 0xb7686bd0>
                chain <tree_list 0xb7684b04 value <integer_type 0xb769c4a4 int>
                    chain <tree_list 0xb768467c value <void_type 0xb76a3870 
void>>>>
            pointer_to_this <pointer_type 0xb75f057c>>
        nothrow public external built-in decl_3 QI file <internal> line 0
        built-in BUILT_IN_NORMAL:BUILT_IN_STRCHR context 
<translation_unit_decl 0xb769c144> attributes <tree_list 0xb766e0f0>
        (mem:QI (symbol_ref:SI ("strchr") [flags 0x41] <function_decl 
0xb766de58 strchr>) [0 S1 A8])
        chain <function_decl 0xb766df30 __builtin_strcmp type <function_type 
0xb767006c>
            nothrow public external built-in QI file <internal> line 0
            built-in BUILT_IN_NORMAL:BUILT_IN_STRCMP context 
<translation_unit_decl 0xb769c144> attributes <tree_list 0xb766e140>
            (mem:QI (symbol_ref:SI ("strcmp") [flags 0x41] <function_decl 
0xb766df30 __builtin_strcmp>) [0 S1 A8]) chain <function_decl 0xb76700d8 
strcmp>>>>
(gdb) c
Continuing.

Breakpoint 2, cgraph_remove_node (node=0xb75f05e8)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/cgraph.c:218
218         cgraph_remove_edge (node->callers->caller, node);
 <function_decl 0xb766dd80 __builtin_strchr
    type <function_type 0xb766b948
        type <pointer_type 0xb76a3ec4 type <integer_type 0xb769c360 char>
            unsigned SI
            size <integer_cst 0xb769a7d0 constant 32>
            unit size <integer_cst 0xb769a820 constant 4>
            align 32 symtab 0 alias set -1>
        DI
        size <integer_cst 0xb769a5a0 constant 64>
        unit size <integer_cst 0xb769a794 constant 8>
        align 64 symtab 0 alias set -1
        attributes <tree_list 0xb7668c58
            purpose <identifier_node 0xb76873c0 nonnull>
            value <tree_list 0xb768b780
                value <integer_cst 0xb768b76c constant 1>>>
        arg-types <tree_list 0xb7684b18 value <pointer_type 0xb7686bd0>
            chain <tree_list 0xb7684b04 value <integer_type 0xb769c4a4 int>
                chain <tree_list 0xb768467c value <void_type 0xb76a3870 
void>>>>
        pointer_to_this <pointer_type 0xb75f057c>>
    used nothrow public external built-in QI file <internal> line 0
    built-in BUILT_IN_NORMAL:BUILT_IN_STRCHR context <translation_unit_decl 
0xb769c144> attributes <tree_list 0xb766e0b4> chain <function_decl 0xb766de58 
strchr>>
(gdb) bt
#0  cgraph_remove_node (node=0xb75f05e8)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/cgraph.c:218
#1  0x082a8f38 in cgraph_optimize ()
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/cgraphunit.c:892
#2  0x08086374 in c_objc_common_finish_file ()
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/c-objc-common.c:245
#3  0x0826eaad in toplev_main (argc=0, argv=0xbffffcbc)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/toplev.c:1822
#4  0x0809821e in main (argc=0, argv=0x0)
    at /net/gnu/export/gnu/src/gcc-3.4/gcc/gcc/main.c:35
(gdb) call decl_assembler_name (node->decl)
$2 = (union tree_node *) 0xb75ee680
(gdb) call debug_tree(0xb75ee680)
 <identifier_node 0xb75ee680 *bar>
(gdb) next
220         cgraph_remove_edge (node, node->callees->callee);
(gdb)
222         cgraph_remove_node (node->nested);
(gdb)
223       if (node->origin)
(gdb)
231       if (node->previous)
(gdb)
234         cgraph_nodes = node->next;
(gdb)
235       if (node->next)
(gdb)
237       DECL_SAVED_TREE (node->decl) = NULL;
(gdb)
238       DECL_SAVED_INSNS (node->decl) = NULL;
(gdb)
239       DECL_ARGUMENTS (node->decl) = NULL;
(gdb)
240       DECL_INITIAL (node->decl) = error_mark_node;
(gdb)
241       slot =
(gdb)
245       if (slot == 0)
(gdb) p slot
$3 = (void **) 0x0
(gdb)





-- 


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


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