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

Iain Sandoe <iains at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #35039|0                           |1
        is obsolete|                            |

--- Comment #26 from Iain Sandoe <iains at gcc dot gnu.org> ---
Created attachment 46993
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46993&action=edit
[a] remove the Darwin-specific lo_sum patterns

So, the lo_sum patterns in darwin.md have neither predicate nor constraint.

This means that they match anything that combine tries (via recog) and we end
up with unusable RTX.

so step one, was to remove these patterns and fall back on movdi_internal64 -
actually, this makes quite an improvement.. several of the test cases
progressed right away.

BUT.  The we see "insn doesn't match it's constraints" because LRA has fallen
back on loading a double reg ( ^d , m ) option.

This is because the Y constraint is not recognising cases that matter as
described above

Reply via email to