https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54896
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Known to work| |6.0
Known to fail| |4.9.3, 5.3.0
--- Comment #11 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to Bernd Schmidt from comment #10)
> This no longer seems reproducible with current trunk. The testcase takes
> about 18 seconds to compile with -O3 on my machine, with no time spent in
> slp-vect.
>
> Did those patches make it into 4.9?
No, we eliminate the write-only variable now as well.
Move 'Data' into global scope and make it non-static and it will
still reproduce with GCC 5.
I fixed it with GCC 6 it seems.
With checking enabled I see with -O3 -fno-checking (and the above static
var issue "fixed"):
alias stmt walking : 27.93 (34%) usr 0.12 (22%) sys 28.18 (34%) wall
0 kB ( 0%) ggc
tree DSE : 8.99 (11%) usr 0.00 ( 0%) sys 8.99 (11%) wall
0 kB ( 0%) ggc
CSE : 7.60 ( 9%) usr 0.01 ( 2%) sys 7.62 ( 9%) wall
16382 kB ( 5%) ggc
CSE 2 : 12.55 (15%) usr 0.00 ( 0%) sys 12.57 (15%) wall
0 kB ( 0%) ggc
reload CSE regs : 17.34 (21%) usr 0.00 ( 0%) sys 17.37 (21%) wall
4687 kB ( 1%) ggc
TOTAL : 81.29 0.54 81.91
315199 kB
of course there's still things to speed up here, -O0 takes 1s, -Og 26s and
-O1 50s, -O2+ run into the above ~80s.