https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113701
Roger Sayle <roger at nextmovesoftware dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://gcc.gnu.org/bugzill | |a/show_bug.cgi?id=106518 --- Comment #5 from Roger Sayle <roger at nextmovesoftware dot com> --- I like Uros' patch in comment #2. There have been so many incremental changes and improvements to x86 TImode and register allocation, that this legacy heuristic (workaround?) is not only no longer useful, but it actually hurts register allocation. *cmp<dwi>_doubleword appears to be the only (remaining?) place this idiom is used. Additionally, I think I've mentioned in the past that it might also be useful to have a xchg/swap sinking pass, perhaps as part of cprop_hardreg, so that for example swap followed by swap is eliminated, that swap with one destination REG_DEAD is transformed into mov, etc. Swap/xchg is almost always just hard register renaming, so these should often be eliminatable, but the abstraction is useful to allow this to happen.