vselect on ARM/NEON

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

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

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).

Hello,

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

Pete