https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68173

--- Comment #7 from Vladimir Makarov <vmakarov at gcc dot gnu.org> ---
GCC on trunk is 50 times slower than LLVM-3.7 in -O0 mode on this test.  In -O2
mode GCC is only 20% slower than LLVM-3.7 in the same mode and faster than
LLVM-3.7 with -O0.

About 80% of compile time GCC spent in RA, more accurately in bitmap code used
by LRA (actually bitmap code takes even more if we take their usage from other
passes).

Conversion bitmaps to sparsets where memory requirements permit did not help at
all.  After analyzing RA dumps (working with 8GB dump files in emacs even on
machine with 128GB memory is not fun as it reacts to any key press with big
delays), I believe the problem is not in RA but somewhere before as we have
*5M* allocnos and *10M* program points in -O0 mode and only *6K* allocnos and
*20K* program points in -O2 mode.  Even if I make RA instant, GCC will be still
10 times slower in -O0 mode than LLVM.  I guess solution for the PR would be
switching on some optimizations in -O0 mode which can help decreasing number of
pseudos but I am not sure it is a right thing to do in general.

Reply via email to