[Bug rtl-optimization/33922] [4.3 Regression] slow compilation on ia64 (postreload scheduling)

rguenther at suse dot de gcc-bugzilla@gcc.gnu.org
Thu Nov 1 21:02:00 GMT 2007



------- Comment #23 from rguenther at suse dot de  2007-11-01 21:01 -------
Subject: Re:  [4.3 Regression] slow compilation
 on ia64 (postreload scheduling)

On Thu, 1 Nov 2007, jakub at gcc dot gnu dot org wrote:

> ------- Comment #22 from jakub at gcc dot gnu dot org  2007-11-01 20:59 -------
> The most important cause of the slowdown e.g. compared to 4.2.x is the totally
> insane thing -ftree-pre creates though.
> For -O3 -fno-tree-vectorize -fdump-tree-all pr33922.c
> wc -l shows
> 2361 pr33922.c.090t.sink
> while for -O3 -fno-tree-vectorize -fno-tree-pre -fdump-tree-all pr33922.c
> 324 pr33922.c.090t.sink
> and of course the size of assembly corresponds to this:
> 11400 pr33922.s # -O3 -fno-tree-vectorize
> 195 pr33922.s # -O3 -fno-tree-vectorize -fno-tree-pre
> 
> -O3 -fno-tree-vectorize -fdump-tree-pre-all dump contains
> 2081 ^Created.*value lines and all those constants are actually created and
> many PHI nodes as well.  I believe this might be what nickc was trying to fix
> today by adding a limit, but wasn't that limit huge (131072 bits)?

The limit was to cut off exponential behavior.  But yes, PRE (and more 
PPRE) is known to increase code-size.  Looks like some better heuristics
are needed.

Richard.


-- 


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



More information about the Gcc-bugs mailing list