[PATCH] R600/SI: Use source modifiers for f64 fabs / fneg
Matt Arsenault
arsenm2 at gmail.com
Fri Aug 15 12:02:08 PDT 2014
On Aug 15, 2014, at 9:13 AM, Tom Stellard <tom at stellard.net> wrote:
> On Wed, Aug 06, 2014 at 06:56:37PM -0700, Matt Arsenault wrote:
>
> LGTM.
>
>>
>> On Aug 6, 2014, at 10:34 AM, Matt Arsenault <arsenm2 at gmail.com> wrote:
>>
>>>
>>> On Aug 6, 2014, at 12:25 AM, Michel Dänzer <michel at daenzer.net> wrote:
>>>
>>>>
>>>>> Here is an updated set that implements that for f64. These also
>>>>> switch to preferring using the literal constant as the first operand,
>>>>> rather than loading the immediate into a register.
>>>>
>>>> Sounds good, but I have to defer to Tom or others for review.
>>>>
>>>
>>> I think I’m going to go back on this. It’s mostly a cosmetic change in the scalar case, trading a move of an immediate for one from an SGPR to VGPR. In the vector case, this would require N SGPR copies, but the other way the SGPRs could stay and only 1 copy of the immediate would need to be loaded.
>>
>>
>>
>> These switch back to preferring the old order of literal loaded into a VGPR, and remove the FABS_SI / FNEG_SI pseudoinstructions. I don’t see any need for them anymore, and the pattern can directly match the instructions
>>
>>
>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
r215746 - r215749
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140815/8291bd33/attachment.html>
More information about the llvm-commits
mailing list