http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59470
--- Comment #15 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Created attachment 31425 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31425&action=edit gcc49-pr59470.patch Untested TER changes I've meant. I believe that for gimple_assign_single_p (stmt) the current code pretty much matches the pre-r205709 code (assuming refs_may_alias_p_1 argument order doesn't matter), perhaps with some inspection of assignment expansion code it could be improved to only the gimple_assign_rhs1 (stmt) == use case (if the lhs and rhs of assignment expressions are evaluated always before the actual assignment, the problematic case would be if for assignments that require multiple stores we'd evaluate the expressions after any of the stores), but that is not a regression from that patch. For calls and inline asm it is IMHO desirable to avoid TER only when we really need, both to potentially generate better code or code that LRA doesn't have to fix up that much, and for 4.8 branch also to decrease the amount of code generation changes to decrease risks.