------- Comment #14 from tbm at cyrius dot com 2007-10-27 19:27 -------
(In reply to comment #13)
> What happens if you compile with -O3 -fno-tree-vectorize ?
It's still slow:
(sid)[EMAIL PROTECTED]:~/tmp/gcc/gcc-4.3-20071027-r129674-no-checking/gcc$
./xgcc
-B. -ftime-report -O3 -fno-tree-vectorize -c ~/slow.c
Execution times (seconds)
callgraph construction: 0.00 ( 0%) usr 0.00 ( 2%) sys 0.07 ( 0%) wall
13 kB ( 0%) ggc
callgraph optimization: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
2 kB ( 0%) ggc
df reaching defs : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall
0 kB ( 0%) ggc
df live regs : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall
0 kB ( 0%) ggc
df live&initialized regs: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
df reg dead/unused notes: 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
142 kB ( 1%) ggc
register information : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
alias analysis : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
224 kB ( 2%) ggc
parser : 0.00 ( 0%) usr 0.00 ( 1%) sys 0.04 ( 0%) wall
83 kB ( 1%) ggc
inline heuristics : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
0 kB ( 0%) ggc
tree gimplify : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
14 kB ( 0%) ggc
tree CFG construction : 0.00 ( 0%) usr 0.00 ( 1%) sys 0.02 ( 0%) wall
23 kB ( 0%) ggc
tree CFG cleanup : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
1018 kB ( 8%) ggc
tree VRP : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
132 kB ( 1%) ggc
tree copy propagation : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
24 kB ( 0%) ggc
tree PRE : 0.37 ( 2%) usr 0.00 ( 0%) sys 0.47 ( 1%) wall
1052 kB ( 8%) ggc
tree SSA to normal : 0.06 ( 0%) usr 0.00 ( 1%) sys 0.06 ( 0%) wall
1010 kB ( 8%) ggc
expand : 0.04 ( 0%) usr 0.00 ( 2%) sys 0.37 ( 1%) wall
1182 kB ( 9%) ggc
forward prop : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
2 kB ( 0%) ggc
CSE : 0.03 ( 0%) usr 0.00 ( 1%) sys 0.03 ( 0%) wall
1 kB ( 0%) ggc
dead store elim2 : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
267 kB ( 2%) ggc
CPROP 2 : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
132 kB ( 1%) ggc
bypass jumps : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall
130 kB ( 1%) ggc
CSE 2 : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.14 ( 0%) wall
0 kB ( 0%) ggc
branch prediction : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
combiner : 0.82 ( 3%) usr 0.00 ( 0%) sys 1.66 ( 4%) wall
452 kB ( 4%) ggc
if-conversion : 0.02 ( 0%) usr 0.00 ( 1%) sys 0.03 ( 0%) wall
352 kB ( 3%) ggc
regmove : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
scheduling : 1.34 ( 5%) usr 0.00 ( 0%) sys 2.99 ( 7%) wall
194 kB ( 2%) ggc
local alloc : 0.14 ( 1%) usr 0.00 ( 0%) sys 0.34 ( 1%) wall
50 kB ( 0%) ggc
global alloc : 0.53 ( 2%) usr 0.00 ( 1%) sys 1.15 ( 3%) wall
2537 kB (20%) ggc
reload CSE regs : 0.17 ( 1%) usr 0.00 ( 0%) sys 0.36 ( 1%) wall
584 kB ( 5%) ggc
load CSE after reload : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
0 kB ( 0%) ggc
if-conversion 2 : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.13 ( 0%) wall
0 kB ( 0%) ggc
rename registers : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall
0 kB ( 0%) ggc
scheduling 2 : 20.44 (84%) usr 0.08 (84%) sys 31.73 (79%) wall
1970 kB (15%) ggc
final : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall
0 kB ( 0%) ggc
TOTAL : 24.34 0.10 40.40
12913 kB
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33922