http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54095
--- Comment #9 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-25
09:53:36 UTC ---
Indeed:
Index: gcc/lto-streamer-out.c
===================================================================
--- gcc/lto-streamer-out.c (revision 191694)
+++ gcc/lto-streamer-out.c (working copy)
@@ -1001,6 +1001,7 @@ lto_output (void)
gcc_assert (!bitmap_bit_p (output, DECL_UID (node->symbol.decl)));
bitmap_set_bit (output, DECL_UID (node->symbol.decl));
#endif
+ gcc_assert (symtab_real_symbol_p ((symtab_node) node));
decl_state = lto_new_out_decl_state ();
lto_push_out_decl_state (decl_state);
if (gimple_has_body_p (node->symbol.decl))
produces
#1 0x0000000000822316 in lto_output ()
at /space/rguenther/src/svn/trunk/gcc/lto-streamer-out.c:1004
1004 gcc_assert (symtab_real_symbol_p ((symtab_node) node));
(gdb) call debug_cgraph_node (node)
_ZL14get_md_ptr_locPKv/171 (get_md_ptr_loc) @0x7ffff6274888
Type: function
Visibility: prevailing_def_ironly
previous sharing asm name: 781
References: _ZL8ptr_locs/151 (read)
Referring:
Read from file: build/read-md.o
Function get_md_ptr_loc/171 is inline copy in fprint_md_ptr_loc/173
Availability: local
Function flags: analyzed local finalized
Called by: _Z17fprint_md_ptr_locP8_IO_FILEPKv/173 (1.00 per call) (inlined)
Calls: htab_find/544 (1.00 per call)
Trying
/* If there is a symbol in the set that shares the same
asm name than NODE, rename NODE. */
if (!TREE_PUBLIC (decl)
&& (!symtab_function_p (node)
|| lto_symtab_encoder_encode_body_p (encoder, cgraph
(node))))
for (s = symtab_node_for_asm (DECL_ASSEMBLER_NAME (decl));
s; s = s->symbol.next_sharing_asm_name)
if (s != node
&& lto_symtab_encoder_lookup (encoder, s) != LCC_NOT_FOUND
&& (!symtab_function_p (s)
|| lto_symtab_encoder_encode_body_p (encoder, cgraph
(s))))
{