mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-22 15:00:55 +08:00
toplev.c (compile_file): Move call to coverage_finish ...
* toplev.c (compile_file): Move call to coverage_finish ... * cgraphunit.c (ipa_passes): ... here. Call cgraph_process_new_functions. * ipa-utils.c (get_base_var): Handle CONSTRUCTOR. * Makefile.in (cgraphunit.o): Add dependency on COVERAGE_H. From-SVN: r146354
This commit is contained in:
parent
aa50850225
commit
3baf459d85
@ -1,3 +1,11 @@
|
||||
2009-04-19 Diego Novillo <dnovillo@google.com>
|
||||
|
||||
* toplev.c (compile_file): Move call to coverage_finish ...
|
||||
* cgraphunit.c (ipa_passes): ... here.
|
||||
Call cgraph_process_new_functions.
|
||||
* ipa-utils.c (get_base_var): Handle CONSTRUCTOR.
|
||||
* Makefile.in (cgraphunit.o): Add dependency on COVERAGE_H.
|
||||
|
||||
2009-04-19 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
* cgraph.c (cgraph_create_edge, cgraph_set_call_stmt): Set proper cfun.
|
||||
|
@ -2615,7 +2615,7 @@ cgraphunit.o : cgraphunit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
|
||||
$(TARGET_H) $(CGRAPH_H) intl.h pointer-set.h $(FUNCTION_H) $(GIMPLE_H) \
|
||||
$(TREE_FLOW_H) $(TREE_PASS_H) $(C_COMMON_H) debug.h $(DIAGNOSTIC_H) \
|
||||
$(FIBHEAP_H) output.h $(PARAMS_H) $(RTL_H) $(TIMEVAR_H) $(IPA_PROP_H) \
|
||||
gt-cgraphunit.h tree-iterator.h
|
||||
gt-cgraphunit.h tree-iterator.h $(COVERAGE_H)
|
||||
cgraphbuild.o : cgraphbuild.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
|
||||
$(TREE_H) langhooks.h $(CGRAPH_H) intl.h pointer-set.h $(GIMPLE_H) \
|
||||
$(TREE_FLOW_H) $(TREE_PASS_H)
|
||||
|
@ -134,6 +134,7 @@ along with GCC; see the file COPYING3. If not see
|
||||
#include "tree-iterator.h"
|
||||
#include "tree-pass.h"
|
||||
#include "output.h"
|
||||
#include "coverage.h"
|
||||
|
||||
static void cgraph_expand_all_functions (void);
|
||||
static void cgraph_mark_functions_to_output (void);
|
||||
@ -978,6 +979,8 @@ cgraph_finalize_compilation_unit (void)
|
||||
cgraph_analyze_functions ();
|
||||
timevar_pop (TV_CGRAPH);
|
||||
}
|
||||
|
||||
|
||||
/* Figure out what functions we want to assemble. */
|
||||
|
||||
static void
|
||||
@ -1238,6 +1241,15 @@ ipa_passes (void)
|
||||
gimple_register_cfg_hooks ();
|
||||
bitmap_obstack_initialize (NULL);
|
||||
execute_ipa_pass_list (all_ipa_passes);
|
||||
|
||||
/* Generate coverage variables and constructors. */
|
||||
coverage_finish ();
|
||||
|
||||
/* Process new functions added. */
|
||||
set_cfun (NULL);
|
||||
current_function_decl = NULL;
|
||||
cgraph_process_new_functions ();
|
||||
|
||||
bitmap_obstack_release (NULL);
|
||||
}
|
||||
|
||||
|
@ -222,7 +222,8 @@ get_base_var (tree t)
|
||||
&& (!CONSTANT_CLASS_P (t))
|
||||
&& TREE_CODE (t) != LABEL_DECL
|
||||
&& TREE_CODE (t) != FUNCTION_DECL
|
||||
&& TREE_CODE (t) != CONST_DECL)
|
||||
&& TREE_CODE (t) != CONST_DECL
|
||||
&& TREE_CODE (t) != CONSTRUCTOR)
|
||||
{
|
||||
t = TREE_OPERAND (t, 0);
|
||||
}
|
||||
|
@ -993,11 +993,6 @@ compile_file (void)
|
||||
varpool_assemble_pending_decls ();
|
||||
finish_aliases_2 ();
|
||||
|
||||
/* This must occur after the loop to output deferred functions.
|
||||
Else the coverage initializer would not be emitted if all the
|
||||
functions in this compilation unit were deferred. */
|
||||
coverage_finish ();
|
||||
|
||||
/* Likewise for mudflap static object registrations. */
|
||||
if (flag_mudflap)
|
||||
mudflap_finish_file ();
|
||||
|
Loading…
x
Reference in New Issue
Block a user