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

--- Comment #10 from alalaw01 at gcc dot gnu.org ---
The stores are getting optimized out because equal_mem_array_ref_p considers
equal pairs of MEM_REFS like

fmcom.x[_168] and fmcom.x[_208]

That is, a ARRAY_REF whose first operand is a COMPONENT_REF fmcom.x (of a
VAR_DECL and a FIELD_DECL), and whose second operand is an SSA_NAME _168 or
_208; I don't see anything obvious to suggest that they should be equal).

get_ref_base_and_extent then returns base=fmcom, size=64, max_size=64 (so not a
variable-sized access), and offset 0 :-(.

Reply via email to