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

--- Comment #24 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 45438
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45438&action=edit
gcc9-pr88714-poc.patch

Proof of concept that fixes the short testcase.
One would need to write remaining non-thumb patterns (strd in vfp.md, ldrd +
strd in arm.md and ldrd + strd in iwmmxt.md, all close to the movdi patterns,
unless there is a possibility to unify them (but, e.g. iwmmxt.md uses r instead
of q, etc.?)) and do it always in ldrdst*.md.  Not really sure about the
predicates, constraints etc. either., will defer that to those familiar with
the backend and architecture.

Reply via email to