summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86ISelLowering.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2016-06-05 05:35:11 +0000
committerCraig Topper <craig.topper@gmail.com>2016-06-05 05:35:11 +0000
commit9f51c9ef15b4bdcaff92f9f1f821666f3a821c5a (patch)
treec0e312401dc4d001a70ea1e0df3b011f27ea3795 /llvm/lib/Target/X86/X86ISelLowering.cpp
parent41f4a05245c03bd34e1ccb876cfd16a6accae0a3 (diff)
downloadbcm5719-llvm-9f51c9ef15b4bdcaff92f9f1f821666f3a821c5a.tar.gz
bcm5719-llvm-9f51c9ef15b4bdcaff92f9f1f821666f3a821c5a.zip
[AVX512] Fix PANDN combining for v4i32/v8i32 when VLX is enabled.
v4i32/v8i32 ANDs aren't promoted to v2i64/v4i64 when VLX is enabled. llvm-svn: 271826
Diffstat (limited to 'llvm/lib/Target/X86/X86ISelLowering.cpp')
-rw-r--r--llvm/lib/Target/X86/X86ISelLowering.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index 5a7c2406861..96e0c5564fc 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -27117,7 +27117,8 @@ static SDValue combineANDXORWithAllOnesIntoANDNP(SDNode *N, SelectionDAG &DAG) {
SDValue N1 = N->getOperand(1);
SDLoc DL(N);
- if (VT != MVT::v2i64 && VT != MVT::v4i64)
+ if (VT != MVT::v2i64 && VT != MVT::v4i64 &&
+ VT != MVT::v4i32 && VT != MVT::v8i32) // Legal with VLX
return SDValue();
// Canonicalize XOR to the left.
OpenPOWER on IntegriCloud