[llvm-commits] [patch] Don't create neon moves in CopyRegToReg, instead trust NEONMoveFixPass to do the conversion

Jakob Stoklund Olesen stoklund at 2pi.dk
Tue Jul 6 09:16:12 PDT 2010


On Jul 5, 2010, at 8:21 AM, Rafael Espindola wrote:

> A recent patch caused a regression on ARM: we would create NEON copy
> instructions when a VFP one would be more profitable. Two options were
> discussed:
> 
> *) Represent the NEON registers as distinct from the VFP registers and
> have explicit copies from one to the other.
> *) Figure out why NEONMoveFixPass was not fixing this.
> 
> Currently NEONMoveFixPass only converts VFP moves to NEON moves. This
> looks reasonable, we just have to avoid creating NEON moves early.
> This is what the attached patch does. It fixes the previous
> regression.

That sounds like the right approach to me.

> Is there a case I am missing? That is, a case where CopyRegToReg was
> correctly creating a NEON move but NEONMoveFixPass fails to convert?
> The tests found nothing.

Go ahead and commit. If there are any cases like that, we'll fix NEONMoveFixPass.

/jakob





More information about the llvm-commits mailing list