[PATCH] D19805: [SelectionDAG] BITREVERSE vector legalization of bit operations

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Mon May 2 07:18:27 PDT 2016


RKSimon created this revision.
RKSimon added a reviewer: jmolloy.
RKSimon added a subscriber: llvm-commits.
RKSimon set the repository for this revision to rL LLVM.

Vector bit operations are typically promoted instead of having custom lowering. This patch changes the isOperationLegalOrCustom tests for vector AND/OR operations to use isOperationLegalOrPromote instead, allowing the SSE implementations to stay on the simd unit.

I can't find any cases where vector AND/OR operations use custom lowering, but if I have missed something it would be possible to add a TLI::isOperationLegalOrCustomOrPromote function to cover all cases - what do you think?

Repository:
  rL LLVM

http://reviews.llvm.org/D19805

Files:
  lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
  test/CodeGen/X86/vector-bitreverse.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D19805.55815.patch
Type: text/x-patch
Size: 518594 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160502/f9ab6272/attachment-0001.bin>


More information about the llvm-commits mailing list