[Bug tree-optimization/64058] [5/6 Regression] Performance degradation after r216304

law at redhat dot com gcc-bugzilla@gcc.gnu.org
Tue Mar 8 23:01:00 GMT 2016


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64058

--- Comment #11 from Jeffrey A. Law <law at redhat dot com> ---
The underlying randomness of coalescing is inherently due to the instability of
SSA_NAME_VERSION.  If we make SSA_NAME_VERSION stable, then the randomness of
coalescing goes away.

So I essentially toss away the existing version #s and rebuild them in a walk
over the IL.  First assignment gets #1, second assignment gets #2, and so-on.

That brings relative stability to the version #s, which in turn brings
stability to the coalescer.

I suspect the existing cases that aren't stable are probably due to default
defs or somesuch.  Those don't have assignments and thus are still getting a
pseudo-random SSA_NAME_VERSION after my renumbering.


More information about the Gcc-bugs mailing list