[PATCH] D55935: [X86][SSE] Canonicalize OR(AND(X, C), AND(Y, ~C)) -> OR(AND(X, C), ANDNP(C, Y))

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 15 06:29:50 PST 2019


RKSimon updated this revision to Diff 181775.
RKSimon added a comment.

Only canonicalize the pattern if the target is XOP (which will use the PCMOV instruction) or the mask has multiple uses.


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D55935/new/

https://reviews.llvm.org/D55935

Files:
  lib/Target/X86/X86ISelLowering.cpp
  test/CodeGen/X86/bitreverse.ll
  test/CodeGen/X86/combine-bitselect.ll
  test/CodeGen/X86/combine-fcopysign.ll
  test/CodeGen/X86/vec-copysign.ll
  test/CodeGen/X86/vector-bitreverse.ll
  test/CodeGen/X86/vector-fshl-256.ll
  test/CodeGen/X86/vector-fshl-512.ll
  test/CodeGen/X86/vector-fshl-rot-256.ll
  test/CodeGen/X86/vector-fshl-rot-512.ll
  test/CodeGen/X86/vector-fshr-256.ll
  test/CodeGen/X86/vector-fshr-512.ll
  test/CodeGen/X86/vector-fshr-rot-256.ll
  test/CodeGen/X86/vector-fshr-rot-512.ll
  test/CodeGen/X86/vector-rotate-256.ll
  test/CodeGen/X86/vector-rotate-512.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D55935.181775.patch
Type: text/x-patch
Size: 151184 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190115/4f19f144/attachment.bin>


More information about the llvm-commits mailing list