[Bug tree-optimization/68198] [6 Regression]Excessive code size, compile time and memory usage bloat due to FSM threading in 453.povray
law at redhat dot com
gcc-bugzilla@gcc.gnu.org
Fri Nov 13 16:39:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68198
--- Comment #8 from Jeffrey A. Law <law at redhat dot com> ---
Creating a forwarder outside the path doesn't help since you still have to have
an edge to the forwarder from each copy of the block with the SWITCH_EXPR.
The solution is to realize that a path containing a SWITCH_EXPR that does not
have a compile-time determinable destination probably isn't worth optimizing to
start with! Essentially we're duplicating a block with 1k outgoing edges to
eliminate a single conditional later in the path. From a cost/benefit analysis
that's just silly.
As I mentioned, this kind of situation was possible with the old threader too,
it was just too dumb to discover the path.
More information about the Gcc-bugs
mailing list