https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90270

--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to bin cheng from comment #7)
> Also, when calling move_fixed_address_to_symbol, fixed_address_object_p
> looks too restricted, it only considers link time constant address.  In this
> case, it's an array object in stack.

But this is because a stack access isn't $reloc but $sp + offset and thus
_not_ a symbol.

But as you noticed IVOPTs computing TARGET_MEM_REF so "early" is a bit
brittle due to later eventual forwardings.  And those forwardings are
hard to avoid because they affect fundamental predicates like
may_propagate_copy where we decide early whether we can propagte into
all uses before actually visiting them.

Reply via email to