This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

More rewrite_into_ssa/rewrite_ssa_into_ssa compile-time imrovements


Yet another compile-time performance issue I noticed while working on
an unrelated change.

The SSA rewriting code currently implements KILLS with a simple bitmap
which is shared across the calls to mark_def_sites and friends.  That
shared sbitmap is (of course) cleared as we start processing a new
block.

While working on some unrelated changes, I noticed that we're spending
quite a bit of time in sbitmap_zero.

My experiments show that the clearing of KILLS is _far_ more costly than
the searches through blocks in sparse bitmaps for the typical access
patterns we see in KILLS --  changing the KILLS into sparse bitmaps
improves the compile time of insn-attrtab by 1.1% and the components of
cc1 by 0.7%.


Bootstrapped and regression tested on i686-pc-linux-gnu.




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]