aboutsummaryrefslogtreecommitdiff
path: root/gcc/lto
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2012-05-09 07:01:39 +0000
committerJan Hubicka <jh@suse.cz>2012-05-09 07:01:39 +0000
commit70aec27edc4e886cef09edc48369a82291e9a319 (patch)
treee597dfea9b0d87794f19fd362d4d0233467a72af /gcc/lto
parentf13e574756ae97770d4b40795564c90ae70fca9b (diff)
* cgraphbuild.c (build_cgraph_edges): Do not finalize vars
with VALUE_EXPR. * cgraph.h (varpool_can_remove_if_no_refs): Vars with VALUE_EXPR are removable. * toplev.c (wrapup_global_declaration_2): Vars with VALUE_EXPR need to wrapup. (compile_file): Do not output variables. * cgraphbuild.c (varpool_finalize_decl): When var is finalized late, output it. * langhooks.c: Include timevar.h (write_global_declarations): Finalize compilation unit after wrapup; set timevars correctly. * passes.c (rest_of_decl_compilation): Decls with VALUE_EXPR needs not to be added to varpool. * varpool.c (varpool_assemble_decl): Sanity check that we are called only on cases where it makes sense; skip constant pool and value expr vars. * lto.c (do_whole_program_analysis): Set timevars correctly. (lto_main): Likewise. * trans-common.c (create_common): Do not fake TREE_ASM_WRITTEN. * trans-decl.c (gfc_finish_cray_pointee): Likewise. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@187314 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lto')
-rw-r--r--gcc/lto/ChangeLog5
-rw-r--r--gcc/lto/lto.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog
index 8c1d9013edb..4be2f2b04c5 100644
--- a/gcc/lto/ChangeLog
+++ b/gcc/lto/ChangeLog
@@ -1,3 +1,8 @@
+2012-05-04 Jan Hubicka <jh@suse.cz>
+
+ * lto.c (do_whole_program_analysis): Set timevars correctly.
+ (lto_main): Likewise.
+
2012-05-04 Richard Guenther <rguenther@suse.de>
* lang.opt (fwpa): Do not mark as Optimization.
diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c
index 32fc869e983..00f623f6a0d 100644
--- a/gcc/lto/lto.c
+++ b/gcc/lto/lto.c
@@ -1958,6 +1958,7 @@ materialize_cgraph (void)
static void
do_whole_program_analysis (void)
{
+ timevar_start (TV_PHASE_CGRAPH);
/* Note that since we are in WPA mode, materialize_cgraph will not
actually read in all the function bodies. It only materializes
the decls and cgraph nodes so that analysis can be performed. */
@@ -2017,6 +2018,7 @@ do_whole_program_analysis (void)
dump_memory_report (false);
}
+ timevar_stop (TV_PHASE_CGRAPH);
/* Show the LTO report before launching LTRANS. */
if (flag_lto_report)
print_lto_report ();
@@ -2116,7 +2118,9 @@ lto_main (void)
/* Let the middle end know that we have read and merged all of
the input files. */
+ timevar_start (TV_PHASE_CGRAPH);
compile ();
+ timevar_stop (TV_PHASE_CGRAPH);
/* FIXME lto, if the processes spawned by WPA fail, we miss
the chance to print WPA's report, so WPA will call