aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2024-06-21 14:39:17 +0100
committerSimon Pilgrim <llvm-dev@redking.me.uk>2024-06-21 14:39:50 +0100
commit0be0ab90684102d1bed40362b895579f346e0fc0 (patch)
treeb2e887035813677e5c81d101cc8e204bca5c9198 /llvm/lib
parent2dea00b1437f8620e56e5f1f9566492514ac8647 (diff)
downloadllvm-0be0ab90684102d1bed40362b895579f346e0fc0.zip
llvm-0be0ab90684102d1bed40362b895579f346e0fc0.tar.gz
llvm-0be0ab90684102d1bed40362b895579f346e0fc0.tar.bz2
[X86] SimplifyDemandedVectorEltsForTargetNode - add X86ISD::VPMADDUBSW handling
In general terms, this can reuse the X86ISD::VPMADDWD code (num src elts = 2 * num dst elts) and same zero behaviour.
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/X86/X86ISelLowering.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index f51a5e6..82d2b30 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -41764,6 +41764,7 @@ bool X86TargetLowering::SimplifyDemandedVectorEltsForTargetNode(
KnownZero = LHSZero | RHSZero;
break;
}
+ case X86ISD::VPMADDUBSW:
case X86ISD::VPMADDWD: {
APInt LHSUndef, LHSZero;
APInt RHSUndef, RHSZero;