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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |alpha
          Component|rtl-optimization            |target

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
The bug is clearly in

"
> Btw, if the mem is MEM_READONLY_P how can it be part of
> a {un}aligned_store sequence?

This flag is copied from the original memory operand of the store by
alpha_set_memflags to all memory operands in the expanded sequence."

and thus should be fixed there.  What is the "original" memory reference
here?  It seems for the read-modify-write you should use the target MEM
but somehow a source MEM gets used?  Or rather you should not use either
MEMs flags for _all_ MEMs in the sequence but properly distinguish between
MEMs generated for the load of the source and MEMs generated for the store
to the destination.

Reply via email to