https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77324
--- Comment #9 from Alan Modra <amodra at gmail dot com> --- Eric, I think the condition should be "!strict" rather than "reload_in_progress". I'm not certain about that, but I think the patch might fail if reload needs to iterate over insns more than once. For example, if the first pass over insns performed some sparc_legitimize_reload_address decomposition into lo_sum(high..)) then in the second pass over insns reload keeps the decomposition (I'm sure about that) but loses the reloads (not so sure about that, but that's the only thing that makes sense). So the first few checks in find_reloads_address must *not* say the address is OK. You need to get to legitimize_reload_address again, where "We have to recognize what we have already generated above" comes into play.