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

Rafael Espindola espindola at google.com
Mon Jul 5 08:21:11 PDT 2010


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.

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.

Cheers,
-- 
Rafael Ávila de Espíndola
-------------- next part --------------
A non-text attachment was scrubbed...
Name: neon.patch
Type: text/x-diff
Size: 1920 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20100705/bacfe5cc/attachment.patch>


More information about the llvm-commits mailing list