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.

Reply via email to