https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80198
--- Comment #16 from Jeffrey A. Law <law at redhat dot com> --- What we'd need to do here is capture the temporary equivalence in another structure, then have lookup_avail_expr do multiple lookups using substitutions from that alternate structure. It's not terribly hard conceptually. We really want to avoid polluting const_and_copies and SSA_NAME_VALUE with these temporary equivalences when we can't prove one form is clearly better than the other. That has caused all kinds of problems.