This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/33922] [4.3 Regression] slow compilation on ia64 (postreload scheduling)
- From: "maxim at codesourcery dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 28 Oct 2007 20:04:44 -0000
- Subject: [Bug rtl-optimization/33922] [4.3 Regression] slow compilation on ia64 (postreload scheduling)
- References: <bug-33922-12387@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #17 from maxim at codesourcery dot com 2007-10-28 20:04 -------
Subject: Re: [4.3 Regression] slow compilation
on ia64 (postreload scheduling)
jakub at gcc dot gnu dot org wrote:
> ------- Comment #15 from jakub at gcc dot gnu dot org 2007-10-28 19:10 -------
> Compared to 20070803 with -O3 -fno-tree-vectorize there are now 100 times more
> calls to rtx_needs_barrier and 44 times more calls to
> safe_group_barrier_needed.
> E.g. the latter is horribly expensive, e.g. copying around 401 * sizeof (struct
> reg_write_state) == 1604 bytes several times.
The underlying problem is that list of ready to schedule instructions
now became larger than it was before and the scheduler tends to slow
down with the size of the list growing. There already is a workaround
for this problem (limiting ready list in case it is too large; see
PARAM_MAX_SCHED_READY_INSNS) but it doesn't seem to do best in this case.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33922