[llvm-commits] [llvm] r150433 - /llvm/trunk/lib/Target/ARM/ARMInstrNEON.td
Lang Hames
lhames at apple.com
Mon Feb 13 16:22:10 PST 2012
Right - fixed in r150444.
- Lang.
On Feb 13, 2012, at 3:58 PM, Jakob Stoklund Olesen wrote:
>
> On Feb 13, 2012, at 3:37 PM, Lang Hames <lhames at gmail.com> wrote:
>
>> Author: lhames
>> Date: Mon Feb 13 17:37:19 2012
>> New Revision: 150433
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=150433&view=rev
>> Log:
>> Make operands for VSWP read-modify-write.
>>
>> Modified:
>> llvm/trunk/lib/Target/ARM/ARMInstrNEON.td
>>
>> Modified: llvm/trunk/lib/Target/ARM/ARMInstrNEON.td
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMInstrNEON.td?rev=150433&r1=150432&r2=150433&view=diff
>> ==============================================================================
>> --- llvm/trunk/lib/Target/ARM/ARMInstrNEON.td (original)
>> +++ llvm/trunk/lib/Target/ARM/ARMInstrNEON.td Mon Feb 13 17:37:19 2012
>> @@ -4869,11 +4869,13 @@
>>
>> // Vector Swap
>> def VSWPd : N2VX<0b11, 0b11, 0b00, 0b10, 0b00000, 0, 0,
>> - (outs DPR:$Vd), (ins DPR:$Vm), NoItinerary,
>> - "vswp", "$Vd, $Vm", "", []>;
>> + (outs DPR:$Vd, DPR:$Vd1), (ins DPR:$Vm, DPR:$Vm1),
>> + NoItinerary, "vswp", "$Vd, $Vm", "$Vm = $Vd1, $Vm1 = $Vd",
>> + []>;
>> def VSWPq : N2VX<0b11, 0b11, 0b00, 0b10, 0b00000, 1, 0,
>> - (outs QPR:$Vd), (ins QPR:$Vm), NoItinerary,
>> - "vswp", "$Vd, $Vm", "", []>;
>> + (outs QPR:$Vd, QPR:$Vd1), (ins QPR:$Vm, QPR:$Vm1),
>> + NoItinerary, "vswp", "$Vd, $Vm", "$Vm = $Vd1, $Vm1 = $Vd",
>> + []>;
>
> Hi Lang,
>
> You shouldn't swap the operands in the constraints. That makes the instruction unnecessary!
>
> /jakob
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list