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

--- Comment #14 from Vladimir Makarov <vmakarov at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #13)
> The inline asm stresses the RA to the maximum, it needs 6 registers, di, cx,
> ax + 3 others and sp is fixed and bp is used as frame pointer.
> But at least in theory it should be reloadable.

The problem is actually solved exactly by the patch for PR115458 which makes
live range splitting more reliable.

  I took time to analyze this and I found that although the patch does not do
any hard reg live range splitting, it ran additional sub-passes (assignment
sub-pass) after trying and failing to do the live range splitting.  And
additional sub-pass helps to generate necessary spills and reloads.

In any case I'll still submit the PR test today.

Reply via email to