http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47009
Summary: [4.6 Regression] ICE: SIGSEGV (too deep recursion) in cgraph_clone_inlined_nodes with -O Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: zso...@seznam.cz Host: x86_64-pc-linux-gnu Target: x86_64-pc-linux-gnu Created attachment 22817 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22817 reduced testcase (from g++.dg/opt/inline10.C) Compiler output: $ gcc -O pr47009.C Program received signal SIGSEGV, Segmentation fault. lookup_attribute (attr_name=0x1231777 "leaf", list=0x0) at /mnt/svn/gcc-trunk/gcc/tree.c:5210 5210 size_t attr_len = strlen (attr_name); (gdb) bt #0 lookup_attribute (attr_name=0x1231777 "leaf", list=0x0) at /mnt/svn/gcc-trunk/gcc/tree.c:5210 #1 0x000000000071b073 in flags_from_decl_or_type (exp=0x7ffff5d1b200) at /mnt/svn/gcc-trunk/gcc/calls.c:613 #2 0x00000000008869e6 in gimple_call_flags (stmt=0x7ffff7ed3480) at /mnt/svn/gcc-trunk/gcc/gimple.c:1786 #3 0x0000000000a583c8 in gimple_call_nothrow_p (stmt=0x7ffff7ed3480) at /mnt/svn/gcc-trunk/gcc/gimple.h:2313 #4 stmt_could_throw_p (stmt=0x7ffff7ed3480) at /mnt/svn/gcc-trunk/gcc/tree-eh.c:2530 #5 stmt_could_throw_p (stmt=0x7ffff7ed3480) at /mnt/svn/gcc-trunk/gcc/tree-eh.c:2517 #6 0x0000000000a5acb9 in stmt_can_throw_external (stmt=0x7ffff7ed3480) at /mnt/svn/gcc-trunk/gcc/tree-eh.c:2581 #7 0x0000000000c36810 in cgraph_create_edge_1 (caller=0x7ffff0913000, callee=0x7ffff0912dc0, call_stmt=0x7ffff7ed3480, count=0, freq=1000, nest=<value optimized out>) at /mnt/svn/gcc-trunk/gcc/cgraph.c:1036 #8 0x0000000000c369de in cgraph_create_edge (caller=0x7ffff0913000, callee=0x7ffff0912dc0, call_stmt=<value optimized out>, count=<value optimized out>, freq=<value optimized out>, nest=<value optimized out>) at /mnt/svn/gcc-trunk/gcc/cgraph.c:1055 #9 0x0000000000c38d77 in cgraph_clone_edge (e=0x7ffff0911680, n=<value optimized out>, call_stmt=0x7ffff7ed3480, stmt_uid=0, count_scale=<value optimized out>, freq_scale=<value optimized out>, loop_nest=38463, update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/cgraph.c:2123 #10 0x0000000000c3930f in cgraph_clone_node (n=0x7ffff0912c60, decl=0x7ffff5d1b200, count=<value optimized out>, freq=1000, loop_nest=38463, update_original=0 '\000', redirect_callers=0x0) at /mnt/svn/gcc-trunk/gcc/cgraph.c:2210 #11 0x0000000000c4a6ba in cgraph_clone_inlined_nodes (e=0x7ffff09116e8, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:265 #12 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff09116e8, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #13 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff0911680, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #14 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff0911618, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #15 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff09115b0, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #16 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff0911548, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #17 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff09114e0, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #18 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff0911478, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #19 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff0911410, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #20 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff09113a8, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #21 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff0911340, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #22 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff09112d8, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 #23 0x0000000000c4a74d in cgraph_clone_inlined_nodes (e=0x7ffff0911270, duplicate=1 '\001', update_original=0 '\000') at /mnt/svn/gcc-trunk/gcc/ipa-inline.c:288 ... Tested revisions: r168026 - crash r165699 - OK