This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/43627] [4.5 Regression] slow compilation (tree canonical iv )
- From: "jv244 at cam dot ac dot uk" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 2 Apr 2010 09:26:30 -0000
- Subject: [Bug tree-optimization/43627] [4.5 Regression] slow compilation (tree canonical iv )
- References: <bug-43627-6642@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from jv244 at cam dot ac dot uk 2010-04-02 09:26 -------
(In reply to comment #3)
> This tells me you are comparing apples and cows: "Extra diagnostic checks
> enabled; compiler may run slowly."
>
> Could you try again with a compiler configured with --enable=checking=release?
>
I'll do now...
for reference, 4.4 has:
> gfortran -ftime-report -fbounds-check -g -O3 -ffast-math -funroll-loops -ftree-vectorize -march=native hog.f90
Execution times (seconds)
garbage collection : 0.15 ( 1%) usr 0.00 ( 0%) sys 0.14 ( 1%) wall
0 kB ( 0%) ggc
callgraph construction: 0.33 ( 1%) usr 0.03 ( 4%) sys 0.33 ( 1%) wall
9447 kB ( 2%) ggc
callgraph optimization: 0.46 ( 2%) usr 0.01 ( 1%) sys 0.50 ( 2%) wall
239 kB ( 0%) ggc
ipa cp : 0.22 ( 1%) usr 0.00 ( 0%) sys 0.24 ( 1%) wall
0 kB ( 0%) ggc
ipa reference : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
cfg cleanup : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.12 ( 0%) wall
914 kB ( 0%) ggc
trivially dead code : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
0 kB ( 0%) ggc
df reaching defs : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.12 ( 0%) wall
0 kB ( 0%) ggc
df live regs : 0.22 ( 1%) usr 0.00 ( 0%) sys 0.18 ( 1%) wall
0 kB ( 0%) ggc
df live&initialized regs: 0.10 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
df use-def / def-use chains: 0.11 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%)
wall 0 kB ( 0%) ggc
df reg dead/unused notes: 0.17 ( 1%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
3443 kB ( 1%) ggc
register information : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
0 kB ( 0%) ggc
alias analysis : 0.14 ( 1%) usr 0.00 ( 0%) sys 0.12 ( 0%) wall
6273 kB ( 1%) ggc
register scan : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
rebuild jump labels : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
parser : 1.27 ( 5%) usr 0.12 (16%) sys 1.31 ( 5%) wall
50936 kB ( 9%) ggc
inline heuristics : 0.13 ( 1%) usr 0.05 ( 6%) sys 0.25 ( 1%) wall
0 kB ( 0%) ggc
tree gimplify : 0.44 ( 2%) usr 0.04 ( 5%) sys 0.54 ( 2%) wall
61550 kB (11%) ggc
tree eh : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
tree CFG construction : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
9734 kB ( 2%) ggc
tree CFG cleanup : 0.28 ( 1%) usr 0.00 ( 0%) sys 0.18 ( 1%) wall
668 kB ( 0%) ggc
tree VRP : 1.21 ( 5%) usr 0.03 ( 4%) sys 1.26 ( 5%) wall
42193 kB ( 8%) ggc
tree copy propagation : 0.21 ( 1%) usr 0.00 ( 0%) sys 0.24 ( 1%) wall
315 kB ( 0%) ggc
tree find ref. vars : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
8937 kB ( 2%) ggc
tree PTA : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.10 ( 0%) wall
758 kB ( 0%) ggc
tree alias analysis : 0.12 ( 0%) usr 0.05 ( 6%) sys 0.12 ( 0%) wall
77 kB ( 0%) ggc
tree call clobbering : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
18 kB ( 0%) ggc
tree flow sensitive alias: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
121 kB ( 0%) ggc
tree flow insensitive alias: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%)
wall 0 kB ( 0%) ggc
tree memory partitioning: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
21 kB ( 0%) ggc
tree PHI insertion : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
201 kB ( 0%) ggc
tree SSA rewrite : 0.17 ( 1%) usr 0.01 ( 1%) sys 0.13 ( 1%) wall
19668 kB ( 4%) ggc
tree SSA other : 0.11 ( 0%) usr 0.03 ( 4%) sys 0.18 ( 1%) wall
360 kB ( 0%) ggc
tree SSA incremental : 0.24 ( 1%) usr 0.02 ( 3%) sys 0.25 ( 1%) wall
40 kB ( 0%) ggc
tree operand scan : 0.36 ( 1%) usr 0.15 (19%) sys 0.58 ( 2%) wall
27070 kB ( 5%) ggc
dominator optimization: 0.26 ( 1%) usr 0.00 ( 0%) sys 0.14 ( 1%) wall
2270 kB ( 0%) ggc
tree SRA : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree CCP : 0.33 ( 1%) usr 0.01 ( 1%) sys 0.24 ( 1%) wall
4060 kB ( 1%) ggc
tree reassociation : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.10 ( 0%) wall
124 kB ( 0%) ggc
tree PRE : 5.18 (21%) usr 0.05 ( 6%) sys 5.07 (20%) wall
87699 kB (16%) ggc
tree FRE : 0.51 ( 2%) usr 0.00 ( 0%) sys 0.55 ( 2%) wall
7664 kB ( 1%) ggc
tree code sinking : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
75 kB ( 0%) ggc
tree linearize phis : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree forward propagate: 0.11 ( 0%) usr 0.02 ( 3%) sys 0.11 ( 0%) wall
11274 kB ( 2%) ggc
tree phiprop : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree conservative DCE : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
2 kB ( 0%) ggc
tree aggressive DCE : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
5 kB ( 0%) ggc
tree DSE : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall
65 kB ( 0%) ggc
tree loop bounds : 0.23 ( 1%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall
5701 kB ( 1%) ggc
loop invariant motion : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.15 ( 1%) wall
0 kB ( 0%) ggc
tree canonical iv : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
23 kB ( 0%) ggc
scev constant prop : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.12 ( 0%) wall
520 kB ( 0%) ggc
tree loop unswitching : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
0 kB ( 0%) ggc
complete unrolling : 0.09 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
1121 kB ( 0%) ggc
tree iv optimization : 2.30 (10%) usr 0.01 ( 1%) sys 2.33 ( 9%) wall
34677 kB ( 6%) ggc
predictive commoning : 0.94 ( 4%) usr 0.02 ( 3%) sys 1.00 ( 4%) wall
42843 kB ( 8%) ggc
tree loop init : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
232 kB ( 0%) ggc
tree SSA uncprop : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree SSA to normal : 0.11 ( 0%) usr 0.02 ( 3%) sys 0.22 ( 1%) wall
17790 kB ( 3%) ggc
tree rename SSA copies: 0.06 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall
0 kB ( 0%) ggc
dominance frontiers : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
dominance computation : 0.11 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
0 kB ( 0%) ggc
control dependences : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
0 kB ( 0%) ggc
expand : 0.87 ( 4%) usr 0.01 ( 1%) sys 0.89 ( 4%) wall
27910 kB ( 5%) ggc
forward prop : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
3922 kB ( 1%) ggc
CSE : 0.53 ( 2%) usr 0.01 ( 1%) sys 0.65 ( 3%) wall
639 kB ( 0%) ggc
dead code elimination : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
0 kB ( 0%) ggc
dead store elim1 : 0.11 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
2892 kB ( 1%) ggc
dead store elim2 : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall
2730 kB ( 1%) ggc
loop analysis : 0.03 ( 0%) usr 0.01 ( 1%) sys 0.04 ( 0%) wall
389 kB ( 0%) ggc
CPROP 1 : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
430 kB ( 0%) ggc
PRE : 0.08 ( 0%) usr 0.01 ( 1%) sys 0.11 ( 0%) wall
15 kB ( 0%) ggc
CPROP 2 : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
1014 kB ( 0%) ggc
bypass jumps : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall
1039 kB ( 0%) ggc
web : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
14 kB ( 0%) ggc
CSE 2 : 0.20 ( 1%) usr 0.00 ( 0%) sys 0.25 ( 1%) wall
228 kB ( 0%) ggc
branch prediction : 0.14 ( 1%) usr 0.00 ( 0%) sys 0.12 ( 0%) wall
4586 kB ( 1%) ggc
combiner : 0.79 ( 3%) usr 0.01 ( 1%) sys 0.78 ( 3%) wall
15629 kB ( 3%) ggc
if-conversion : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
140 kB ( 0%) ggc
regmove : 0.11 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
0 kB ( 0%) ggc
integrated RA : 0.81 ( 3%) usr 0.00 ( 0%) sys 1.02 ( 4%) wall
2360 kB ( 0%) ggc
reload : 0.57 ( 2%) usr 0.00 ( 0%) sys 0.43 ( 2%) wall
2090 kB ( 0%) ggc
reload CSE regs : 0.39 ( 2%) usr 0.01 ( 1%) sys 0.43 ( 2%) wall
4804 kB ( 1%) ggc
load CSE after reload : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall
31 kB ( 0%) ggc
thread pro- & epilogue: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
451 kB ( 0%) ggc
if-conversion 2 : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
59 kB ( 0%) ggc
peephole 2 : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
81 kB ( 0%) ggc
rename registers : 0.35 ( 1%) usr 0.00 ( 0%) sys 0.36 ( 1%) wall
379 kB ( 0%) ggc
scheduling 2 : 0.51 ( 2%) usr 0.00 ( 0%) sys 0.56 ( 2%) wall
342 kB ( 0%) ggc
machine dep reorg : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
2 kB ( 0%) ggc
reorder blocks : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
129 kB ( 0%) ggc
final : 0.16 ( 1%) usr 0.03 ( 4%) sys 0.23 ( 1%) wall
745 kB ( 0%) ggc
symout : 0.04 ( 0%) usr 0.01 ( 1%) sys 0.04 ( 0%) wall
3436 kB ( 1%) ggc
variable tracking : 0.09 ( 0%) usr 0.00 ( 0%) sys 0.10 ( 0%) wall
1278 kB ( 0%) ggc
TOTAL : 24.14 0.77 24.91
537367 kB
/data03/vondele/gcc_4_4_branch/build/lib/gcc/x86_64-unknown-linux-gnu/4.4.2/libgfortranbegin.a(fmain.o):
In function `main':
/data03/vondele/gcc_4_4_branch/gcc/libgfortran/fmain.c:21: undefined reference
to `MAIN__'
collect2: ld returned 1 exit status
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43627