aboutsummaryrefslogtreecommitdiff
path: root/gcc/lto/lto.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/lto/lto.c')
-rw-r--r--gcc/lto/lto.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c
index 9db7845..c6c6c82 100644
--- a/gcc/lto/lto.c
+++ b/gcc/lto/lto.c
@@ -3090,6 +3090,10 @@ read_cgraph_and_symbols (unsigned nfiles, const char **fnames)
dump_symtab (cgraph_dump_file);
}
lto_symtab_merge_symbols ();
+ /* Removal of unreacable symbols is needed to make verify_symtab to pass;
+ we are still having duplicated comdat groups containing local statics.
+ We could also just remove them while merging. */
+ symtab_remove_unreachable_nodes (false, dump_file);
ggc_collect ();
cgraph_state = CGRAPH_STATE_IPA_SSA;
@@ -3261,7 +3265,7 @@ do_whole_program_analysis (void)
dump_symtab (cgraph_dump_file);
}
#ifdef ENABLE_CHECKING
- verify_cgraph ();
+ verify_symtab ();
#endif
bitmap_obstack_release (NULL);