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

--- Comment #5 from Renlin Li <renlin at gcc dot gnu.org> ---
(In reply to Vladimir Makarov from comment #3)
> (In reply to Ramana Radhakrishnan from comment #2)
> > Waiting.
> 
> Actually, I have a candidate patch to deal with scratches created during
> LRA.  But I can not test it as I have no "local change to gcc", a test case
> and used option set.
> 
> In any case, if this problem is solved by other means (e.g. using another
> patterns), we should probably close the bug.

Yes, it's possible to circumvent this bug by slightly adjusting the patterns.
For example, instead of relying on LRA to create pseudo (by using
match_scratch), pseudo registers can be created explicitly during expand stage,
and used as an normal early clobber register operand in the complex pattern.

However, the problem, described here is still there.

If it's Okay for you to share your change, I quite happy to test it.

Reply via email to