[LLVMdev] vselect on ARM/NEON

Peter Couperus peter.couperus at st.com
Fri Oct 12 08:03:53 PDT 2012


Hello,

Thanks for the comments.  I'll submit the one-line patch, with a 
simplified testcase from one of the PRs shortly.

Pete


On 10/11/2012 11:48 AM, Nadav Rotem wrote:
> If you mark VSELECT as 'expand' then it will be expanded to a sequence of AND/OR/XOR, which is pretty efficient (found in LegalizeVectorOps.cpp ExpandVSELECT).
>
>
> On Oct 11, 2012, at 11:05 AM, Jim Grosbach<grosbach at apple.com>  wrote:
>
>> Seems reasonable to me. Plain 'SELECT' is already marked expand for vector types. I bet that just didn't get updates when VSELECT was introduced.
>>
>> -Jim
>>
>> On Oct 11, 2012, at 10:25 AM, Peter Couperus<peter.couperus at st.com>  wrote:
>>
>>> Hello,
>>>
>>> We've run into a couple of cases where we'd like to use select on vector types, but vselect handling is absent from the ARM backend.
>>> Would there be any potential harm by marking VSELECT as Expand on ARM targets with NEON?
>>> Adding this seems to fix the following PR's:
>>>
>>> http://llvm.org/bugs/show_bug.cgi?id=13831
>>> http://llvm.org/bugs/show_bug.cgi?id=13961
>>>
>>> Thanks!
>>>
>>> Pete
>>>
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list