public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* A renewed look at GCC's performance from rebuild_jump_labels's view
@ 2005-06-04 16:07 Steven Bosscher
  0 siblings, 0 replies; only message in thread
From: Steven Bosscher @ 2005-06-04 16:07 UTC (permalink / raw)
  To: gcc; +Cc: Kazu Hirata

Hi,

Kazu reported on the performance of tree-ssa from rebuild_jump_labels's
view in March last year: http://gcc.gnu.org/ml/gcc/2004-03/msg00659.html.

I decided to redo this little experiment on my collection of cc1-i files.
My results for today's CVS head at -O2 on amd64:

  mainline today
-------------------
       calls  total
cse1     820  11686
cse2      24  11686
gcse    8705  11686
bypass   643  11686
combine   15  11686

"calls" is the number of calls to rebuild_jump_labels() right after
CSE1 (or CSE2, GCSE, BYPASS, or COMBINE).

"total" is the number of calls to the pass itself, i.e. the number of
functions that the RTL optimizers got to see.

GCSE is this high because gcse_main unconditionally returns 1 if it runs 
anything (i.e. when !is_too_expensive) which is probably a bug.  This
number does _not_ include the extra rebuild_jump_labels() call after the
re-runs of cse_main in rest_of_handle_gcse (I just used Kazu's patch and
he didn't take those into account either).

Apparently I have a larger set of .i files than Kazu had.  But still CSS2
almost never has to rebuild_jump_labels, and neither does combine.  I am
not sure why the number for CSE1 is this high.  But 820 out of 11686 is
still only 7% of the times that CSE1 needs to rebuild labels.

Gr.
Steven

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2005-06-04 16:07 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-06-04 16:07 A renewed look at GCC's performance from rebuild_jump_labels's view Steven Bosscher

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).