On Mon, Mar 17, 2014 at 03:24:14PM -0400, Vladimir Makarov wrote:
> It is complicated.  There is no guarantee that it is used only for
> addresses.  I need some time to think how to fix it.
> 
> Meanwhile, you *should* commit the patch into the trunk because it
> solves the real problem.  And I can work from this to make changes
> that the new pattern is only used for addresses.
> 
> The patch is absolutely safe for all targets but s390.  There is
> still a tiny possibility that it might result in some problems for
> s390  (now I see only one situation when a pseudo in a subreg
> changed by equiv plus expr needs a reload).  In any case your patch
> solves real numerous failures and can be used as a base for further
> work.
> 
> Thanks for working on this problem, Andreas.  Sorry that I missed
> the PR60501.

BTW, does LRA require that CC isn't clobbered when it uses
emit_add2_insn? I don't see how it can be guaranteed
(except perhaps on i?86/x86_64 and maybe a few other targets).
emit_add3_insn should be ok (even on s390*?) because recog_memoized
should (I think) never add clobbers (it calls recog with 0
as last argument), but gen_add2_insn is a normall add<Pmode>3 insn that
on many targets clobbers CC.

        Jakub

Reply via email to