[Bug rtl-optimization/15139] [3.4 Regression] cc1 uses excessive amounts of memory compiling small routine
cvs-commit at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Wed Jan 19 09:31:00 GMT 2005
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-01-19 09:31 -------
Subject: Bug 15139
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: jakub@gcc.gnu.org 2005-01-19 09:31:16
Modified files:
gcc : ChangeLog Makefile.in combine.c params.def
params.h
gcc/doc : invoke.texi
gcc/testsuite : ChangeLog
Added files:
gcc/testsuite/gcc.dg: 20050111-2.c
Log message:
PR rtl-optimization/15139
* combine.c: Include params.h.
(count_rtxs): New function.
(record_value_for_reg): If replace_rtx would replace at least
2 occurrences of REG in VALUE and TEM is really large, replace REG with
(clobber (const_int 0)) instead of TEM.
* params.def (PARAM_MAX_LAST_VALUE_RTL): New.
* params.h (MAX_LAST_VALUE_RTL): New.
* Makefile.in (combine.o): Depend on $(PARAMS_H).
* doc/invoke.texi (--param max-last-value-rtl=N): Document.
* gcc.dg/20050111-2.c: New test.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.7184&r2=2.7185
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/Makefile.in.diff?cvsroot=gcc&r1=1.1442&r2=1.1443
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/combine.c.diff?cvsroot=gcc&r1=1.468&r2=1.469
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/params.def.diff?cvsroot=gcc&r1=1.51&r2=1.52
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/params.h.diff?cvsroot=gcc&r1=1.25&r2=1.26
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/invoke.texi.diff?cvsroot=gcc&r1=1.568&r2=1.569
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.4908&r2=1.4909
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/20050111-2.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15139
More information about the Gcc-bugs
mailing list