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.