Commit 10d43c2d by Diego Novillo

Makefile.in (c-pch.o, [...]): Depend on timevar.h.

2010-04-12  Diego Novillo  <dnovillo@google.com>

	* Makefile.in (c-pch.o, ggc-common.o): Depend on timevar.h.
	* c-pch.c: Include timevar.h.
	(c_common_write_pch): Use TV_PCH_SAVE and TV_PCH_CPP_SAVE timers.
	(c_common_read_pch): Use TV_PCH_RESTORE and TV_PCH_CPP_RESTORE
	timers.
	* ggc-common.c: Include timevar.h.
	(gt_pch_save): Use TV_PCH_PTR_REALLOC and TV_PCH_PTR_SORT
	timers.
	* timevar.def (TV_PCH_SAVE): Define.
	(TV_PCH_CPP_SAVE): Define.
	(TV_PCH_PTR_REALLOC): Define.
	(TV_PCH_PTR_SORT): Define.
	(TV_PCH_RESTORE): Define.
	(TV_PCH_CPP_RESTORE): Define.

From-SVN: r158266
parent 143597ff
...@@ -2088,7 +2088,8 @@ c-dump.o : c-dump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ ...@@ -2088,7 +2088,8 @@ c-dump.o : c-dump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
c-pch.o : c-pch.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(CPPLIB_H) $(TREE_H) \ c-pch.o : c-pch.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(CPPLIB_H) $(TREE_H) \
$(C_COMMON_H) output.h $(TOPLEV_H) $(C_PRAGMA_H) $(GGC_H) debug.h \ $(C_COMMON_H) output.h $(TOPLEV_H) $(C_PRAGMA_H) $(GGC_H) debug.h \
langhooks.h $(FLAGS_H) hosthooks.h version.h $(TARGET_H) opts.h langhooks.h $(FLAGS_H) hosthooks.h version.h $(TARGET_H) opts.h \
timevar.h
$(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \ $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
-DHOST_MACHINE=\"$(host)\" -DTARGET_MACHINE=\"$(target)\" \ -DHOST_MACHINE=\"$(host)\" -DTARGET_MACHINE=\"$(target)\" \
$< $(OUTPUT_OPTION) $< $(OUTPUT_OPTION)
...@@ -2183,7 +2184,7 @@ gtype-desc.o: gtype-desc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ ...@@ -2183,7 +2184,7 @@ gtype-desc.o: gtype-desc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
ggc-common.o: ggc-common.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ ggc-common.o: ggc-common.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(GGC_H) $(HASHTAB_H) $(TOPLEV_H) $(PARAMS_H) hosthooks.h \ $(GGC_H) $(HASHTAB_H) $(TOPLEV_H) $(PARAMS_H) hosthooks.h \
$(HOSTHOOKS_DEF_H) vec.h $(PLUGIN_H) $(HOSTHOOKS_DEF_H) vec.h $(PLUGIN_H) timevar.h
ggc-page.o: ggc-page.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) \ ggc-page.o: ggc-page.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) \
$(FLAGS_H) $(TOPLEV_H) $(GGC_H) $(TIMEVAR_H) $(TM_P_H) $(PARAMS_H) $(TREE_FLOW_H) $(PLUGIN_H) $(FLAGS_H) $(TOPLEV_H) $(GGC_H) $(TIMEVAR_H) $(TM_P_H) $(PARAMS_H) $(TREE_FLOW_H) $(PLUGIN_H)
......
...@@ -35,6 +35,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -35,6 +35,7 @@ along with GCC; see the file COPYING3. If not see
#include "hosthooks.h" #include "hosthooks.h"
#include "target.h" #include "target.h"
#include "opts.h" #include "opts.h"
#include "timevar.h"
/* This is a list of flag variables that must match exactly, and their /* This is a list of flag variables that must match exactly, and their
names for the error message. The possible values for *flag_var must names for the error message. The possible values for *flag_var must
...@@ -178,6 +179,8 @@ c_common_write_pch (void) ...@@ -178,6 +179,8 @@ c_common_write_pch (void)
long written; long written;
struct c_pch_header h; struct c_pch_header h;
timevar_push (TV_PCH_SAVE);
(*debug_hooks->handle_pch) (1); (*debug_hooks->handle_pch) (1);
cpp_write_pch_deps (parse_in, pch_outfile); cpp_write_pch_deps (parse_in, pch_outfile);
...@@ -211,13 +214,18 @@ c_common_write_pch (void) ...@@ -211,13 +214,18 @@ c_common_write_pch (void)
fatal_error ("can%'t seek in %s: %m", asm_file_name); fatal_error ("can%'t seek in %s: %m", asm_file_name);
gt_pch_save (pch_outfile); gt_pch_save (pch_outfile);
timevar_push (TV_PCH_CPP_SAVE);
cpp_write_pch_state (parse_in, pch_outfile); cpp_write_pch_state (parse_in, pch_outfile);
timevar_pop (TV_PCH_CPP_SAVE);
if (fseek (pch_outfile, 0, SEEK_SET) != 0 if (fseek (pch_outfile, 0, SEEK_SET) != 0
|| fwrite (get_ident (), IDENT_LENGTH, 1, pch_outfile) != 1) || fwrite (get_ident (), IDENT_LENGTH, 1, pch_outfile) != 1)
fatal_error ("can%'t write %s: %m", pch_file); fatal_error ("can%'t write %s: %m", pch_file);
fclose (pch_outfile); fclose (pch_outfile);
timevar_pop (TV_PCH_SAVE);
} }
/* Check the PCH file called NAME, open on FD, to see if it can be /* Check the PCH file called NAME, open on FD, to see if it can be
...@@ -371,12 +379,14 @@ c_common_read_pch (cpp_reader *pfile, const char *name, ...@@ -371,12 +379,14 @@ c_common_read_pch (cpp_reader *pfile, const char *name,
expanded_location saved_loc; expanded_location saved_loc;
bool saved_trace_includes; bool saved_trace_includes;
timevar_push (TV_PCH_RESTORE);
f = fdopen (fd, "rb"); f = fdopen (fd, "rb");
if (f == NULL) if (f == NULL)
{ {
cpp_errno (pfile, CPP_DL_ERROR, "calling fdopen"); cpp_errno (pfile, CPP_DL_ERROR, "calling fdopen");
close (fd); close (fd);
return; goto end;
} }
cpp_get_callbacks (parse_in)->valid_pch = NULL; cpp_get_callbacks (parse_in)->valid_pch = NULL;
...@@ -385,7 +395,7 @@ c_common_read_pch (cpp_reader *pfile, const char *name, ...@@ -385,7 +395,7 @@ c_common_read_pch (cpp_reader *pfile, const char *name,
{ {
cpp_errno (pfile, CPP_DL_ERROR, "reading"); cpp_errno (pfile, CPP_DL_ERROR, "reading");
fclose (f); fclose (f);
return; goto end;
} }
if (!flag_preprocess_only) if (!flag_preprocess_only)
...@@ -417,15 +427,21 @@ c_common_read_pch (cpp_reader *pfile, const char *name, ...@@ -417,15 +427,21 @@ c_common_read_pch (cpp_reader *pfile, const char *name,
saved_loc = expand_location (line_table->highest_line); saved_loc = expand_location (line_table->highest_line);
saved_trace_includes = line_table->trace_includes; saved_trace_includes = line_table->trace_includes;
timevar_push (TV_PCH_CPP_RESTORE);
cpp_prepare_state (pfile, &smd); cpp_prepare_state (pfile, &smd);
timevar_pop (TV_PCH_CPP_RESTORE);
gt_pch_restore (f); gt_pch_restore (f);
timevar_push (TV_PCH_CPP_RESTORE);
if (cpp_read_state (pfile, name, f, smd) != 0) if (cpp_read_state (pfile, name, f, smd) != 0)
{ {
fclose (f); fclose (f);
return; timevar_pop (TV_PCH_CPP_RESTORE);
goto end;
} }
timevar_pop (TV_PCH_CPP_RESTORE);
fclose (f); fclose (f);
...@@ -437,6 +453,9 @@ c_common_read_pch (cpp_reader *pfile, const char *name, ...@@ -437,6 +453,9 @@ c_common_read_pch (cpp_reader *pfile, const char *name,
been loaded. */ been loaded. */
if (lang_post_pch_load) if (lang_post_pch_load)
(*lang_post_pch_load) (); (*lang_post_pch_load) ();
end:
timevar_pop (TV_PCH_RESTORE);
} }
/* Indicate that no more PCH files should be read. */ /* Indicate that no more PCH files should be read. */
......
...@@ -32,6 +32,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -32,6 +32,7 @@ along with GCC; see the file COPYING3. If not see
#include "hosthooks-def.h" #include "hosthooks-def.h"
#include "plugin.h" #include "plugin.h"
#include "vec.h" #include "vec.h"
#include "timevar.h"
#ifdef HAVE_SYS_RESOURCE_H #ifdef HAVE_SYS_RESOURCE_H
# include <sys/resource.h> # include <sys/resource.h>
...@@ -501,6 +502,7 @@ gt_pch_save (FILE *f) ...@@ -501,6 +502,7 @@ gt_pch_save (FILE *f)
gt_pch_save_stringpool (); gt_pch_save_stringpool ();
timevar_push (TV_PCH_PTR_REALLOC);
saving_htab = htab_create (50000, saving_htab_hash, saving_htab_eq, free); saving_htab = htab_create (50000, saving_htab_hash, saving_htab_eq, free);
for (rt = gt_ggc_rtab; *rt; rt++) for (rt = gt_ggc_rtab; *rt; rt++)
...@@ -532,8 +534,13 @@ gt_pch_save (FILE *f) ...@@ -532,8 +534,13 @@ gt_pch_save (FILE *f)
state.ptrs = XNEWVEC (struct ptr_data *, state.count); state.ptrs = XNEWVEC (struct ptr_data *, state.count);
state.ptrs_i = 0; state.ptrs_i = 0;
htab_traverse (saving_htab, call_alloc, &state); htab_traverse (saving_htab, call_alloc, &state);
timevar_pop (TV_PCH_PTR_REALLOC);
timevar_push (TV_PCH_PTR_SORT);
qsort (state.ptrs, state.count, sizeof (*state.ptrs), compare_ptr_data); qsort (state.ptrs, state.count, sizeof (*state.ptrs), compare_ptr_data);
timevar_pop (TV_PCH_PTR_SORT);
/* Write out all the scalar variables. */ /* Write out all the scalar variables. */
for (rt = gt_pch_scalar_rtab; *rt; rt++) for (rt = gt_pch_scalar_rtab; *rt; rt++)
......
...@@ -39,6 +39,14 @@ DEFTIMEVAR (TV_GC , "garbage collection") ...@@ -39,6 +39,14 @@ DEFTIMEVAR (TV_GC , "garbage collection")
/* Time spent generating dump files. */ /* Time spent generating dump files. */
DEFTIMEVAR (TV_DUMP , "dump files") DEFTIMEVAR (TV_DUMP , "dump files")
/* Time spent saving/restoring PCH state. */
DEFTIMEVAR (TV_PCH_SAVE , "PCH main state save")
DEFTIMEVAR (TV_PCH_CPP_SAVE , "PCH preprocessor state save")
DEFTIMEVAR (TV_PCH_PTR_REALLOC , "PCH pointer reallocation")
DEFTIMEVAR (TV_PCH_PTR_SORT , "PCH pointer sort")
DEFTIMEVAR (TV_PCH_RESTORE , "PCH main state restore")
DEFTIMEVAR (TV_PCH_CPP_RESTORE , "PCH preprocessor state restore")
DEFTIMEVAR (TV_CGRAPH , "callgraph construction") DEFTIMEVAR (TV_CGRAPH , "callgraph construction")
DEFTIMEVAR (TV_CGRAPHOPT , "callgraph optimization") DEFTIMEVAR (TV_CGRAPHOPT , "callgraph optimization")
DEFTIMEVAR (TV_IPA_CONSTANT_PROP , "ipa cp") DEFTIMEVAR (TV_IPA_CONSTANT_PROP , "ipa cp")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment