This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/77324] [7 regression] ICE in push_reload, at reload.c:1350
- From: "amodra at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 29 Aug 2016 00:34:54 +0000
- Subject: [Bug target/77324] [7 regression] ICE in push_reload, at reload.c:1350
- Auto-submitted: auto-generated
- References: <bug-77324-4@http.gcc.gnu.org/bugzilla/>
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.