http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58318

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |compile-time-hog
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2013-09-05
            Version|unknown                     |4.9.0
            Summary|very slow compilation on    |very slow compilation on
                   |x86_64-linux with -O3 and   |x86_64-linux with -O3 and
                   |-g                          |-g and checking enabled
     Ever confirmed|0                           |1

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed.  We completely unroll the loop nest in bar () after inlining foo ().
In the -g case we retain a ton of DEBUG_STMTs - 577185 - in a single basic
block.  So walking all of them causes the slowdown, the walking done by
the verifiers - did you compare trunk with --enable-checking=release?  I can
see the same stmts with using GCC 4.8.

A quick check with a non-bootstrapped cc1 but release checking makes the
slowdown go away.

Still, eventually the checkers may need some speed related TLC.

Reply via email to