http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54179
--- Comment #9 from Steven Bosscher <steven at gcc dot gnu.org> 2012-08-05 12:33:56 UTC --- (In reply to comment #7) > cc1 is writing about one line every 2 minutes to its assembler output file: If you've really configured with --enable-stage1-checking=all, you've enabled some checks that can cause this kind of slowdown. One of these checks is an internal memory integrity check on the garbage collector. I suspect that what you're seeing, is a garbage collection attempt between every insn emitted. That would mark-and-sweeps all memory between each assembler output line. All forms of --enable-checking=all are really for debugging purposes only, and even then only for cases where GDB doesn't help (Heisenbug-like issues, strange memory corruption problems, etc.). GCC 4.7.1 is a release compiler, you shouldn't have to configure with any checking flags enabled (configure will default to --enable-checking=release). In other words, if this problem is what I suspect, then this bug is one of those "Doctor it hurts if I ..." problems. ;-) Can you please try without -enable-stage1-checking=all?