[Bug middle-end/54146] Very slow compile at -O1 (expand vars)
steven at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Aug 1 12:22:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54146
Steven Bosscher <steven at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rguenth at gcc dot gnu.org,
| |vmakarov at gcc dot gnu.org
--- Comment #6 from Steven Bosscher <steven at gcc dot gnu.org> 2012-08-01 12:22:29 UTC ---
With my patch applied, and with a couple of lines commented out at the bottom:
// check<CGAL::Quotient<CGAL::Gmpz> >();
// check<CGAL::Lazy_exact_nt<CGAL::Gmpq> >();
// check<CORE::BigInt>();
// check<CORE::BigRat>();
// check<CORE::BigFloat>();
// check<CORE::Expr>();
and with the compiler patched with the patch from comment #5 and configured as:
$ cat configargs.h
/* Generated automatically. */
static const char configuration_arguments[] = "../trunk/configure
--with-mpfr=/opt/cfarm/mpfr-latest --with-gmp=/opt/cfarm/gmp-latest
--with-mpc=/opt/cfarm/mpc-latest --with-isl=/opt/cfarm/isl-latest
--with-cloog=/opt/cfarm/cloog-latest --enable-languages=c,c++ --disable-nls
--disable-libmudflap --disable-libssp --disable-libitm --disable-multilib
--disable-bootstrap --enable-checking=release";
static const char thread_model[] = "posix";
static const struct {
const char *name, *value;
} configure_default_options[] = { { "cpu", "generic" }, { "arch", "x86-64" } };
I have "TOTAL :8223.99" seconds compile time. Top 10 big spenders:
inline heuristics :6393.58 (78%) usr 175699 kB (27%) ggc
tree loop init : 270.76 ( 3%) usr 242922 kB (37%) ggc
if-conversion : 220.55 ( 3%) usr 3774 kB ( 1%) ggc
integrated RA : 199.12 ( 2%) usr 593696 kB (90%) ggc
reload : 128.67 ( 2%) usr 52399 kB ( 8%) ggc
tree SSA incremental : 195.26 ( 2%) usr 160581 kB (24%) ggc
tree SSA rewrite : 112.87 ( 1%) usr 39761 kB ( 6%) ggc
df live regs : 79.90 ( 1%) usr 0 kB ( 0%) ggc
df live&initialized regs: 77.14 ( 1%) usr 0 kB ( 0%) ggc
out of ssa : 63.59 ( 1%) usr 661 kB ( 0%) ggc
The inline heuristics stuff is probably also due to stack-vars handling, I will
look into that.
The loop init stuff is something for Richi.
IRA produces the most garbage, by far, and in fact causes OOM if I do not
comment out those last few lines.
More information about the Gcc-bugs
mailing list