Hi, Oh, I have completely forgotten about this patch
On 06/19, Jeff Law wrote: > On 1/24/19 12:51 PM, Giuliano Belinassi wrote: > > This patch adds two variables named 'TV_CGRAPH_FUNC_EXPANSION' and > > 'TV_CGRAPH_IPA_PASSES' that count the elapsed time of the functions > > 'expand_all_functions' and 'ipa_passes', respectivelly. > > > > The main point of this is that these functions takes a very long time > > when compiling the 'gimple-match.c' file, and therefore may also take > > a long time when compiling other large files. > > > > I also accept suggestions about how to improve this :-) > > > > ChangeLog: > > > > 2019-01-24 Giuliano Belinassi <giuliano.belina...@usp.br> > > > > * cgraph_unit.c (compile): TV_CGRAPH_FUNC_EXPANSION and > > TV_CGRAPH_IPA_PASSES start, stop. > > * timevar.def (TV_CGRAPH_IPA_PASSES, TV_CGRAPH_FUNC_EXPANSION): New. > So I'm guessing you want the accumulated time for the ipa_passes and > expansion. So independent counters using timevar_{start,stop} seem right. Yes, my point was to accumulate the total time spent in those function, including everything these functions calls. With regard to breaking the timevar with IPA, GIMPLE and RTL expansion passes, I can do this but it will require splitting `all_passes` into `all_passes` and `all_rtl_passes`, as suggested by richi in the parallelization thread. I can do this fairly easily since I have already done it done in my branch. Is it OK? > > The alternate approach would be to use the timevar_{push,pop}. This > would change what timevar is on the top of the stack when we call > ipa_passes and expand_all_functions -- it would, in effect, allow us to > determine how much time is spent in those functions which is _not_ > attributable to existing timevars. > > I just want to confirm your intent before acking/naking. > > jeff Giuliano