[X86] Match (or (and A, B), (andn (A, C))) to VPTERNLOG with AVX512.
authorCraig Topper <craig.topper@intel.com>
Sun, 29 Sep 2019 01:24:16 +0000 (01:24 +0000)
committerCraig Topper <craig.topper@intel.com>
Sun, 29 Sep 2019 01:24:16 +0000 (01:24 +0000)
commit6195ed83978c7f97d2c415d1903d7a33ccd8b47f
treeee207300a7b4d33c57f3262aa5407f4a6f17bc87
parentfef62e1a684350292a5dac310ab887cde58955da
[X86] Match (or (and A, B), (andn (A, C))) to VPTERNLOG with AVX512.

This uses a similar isel pattern as we used for vpcmov with XOP.

llvm-svn: 373154
llvm/lib/Target/X86/X86InstrAVX512.td
llvm/test/CodeGen/X86/vector-fshl-512.ll
llvm/test/CodeGen/X86/vector-fshl-rot-512.ll
llvm/test/CodeGen/X86/vector-fshr-512.ll
llvm/test/CodeGen/X86/vector-fshr-rot-512.ll
llvm/test/CodeGen/X86/vector-rotate-512.ll