summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2019-06-26 14:58:11 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2019-06-26 14:58:11 +0000
commit435ee9fb1f86a8f3798c8953b5d1a0b29849fd4e (patch)
tree7826188eaa25740e5ec59f57173775cb2caab7b1 /llvm/lib
parent3f3eacfec1cccf61ee5444832878d169ad5cc349 (diff)
downloadbcm5719-llvm-435ee9fb1f86a8f3798c8953b5d1a0b29849fd4e.tar.gz
bcm5719-llvm-435ee9fb1f86a8f3798c8953b5d1a0b29849fd4e.zip
[X86][SSE] X86TargetLowering::isCommutativeBinOp - add PMULDQ
Allows narrowInsertExtractVectorBinOp to reduce vector size instead of the more restricted SimplifyDemandedVectorEltsForTargetNode llvm-svn: 364434
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/X86/X86ISelLowering.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index 4eb3323b945..e81339d8eb7 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -28587,6 +28587,7 @@ bool X86TargetLowering::isCommutativeBinOp(unsigned Opcode) const {
switch (Opcode) {
// TODO: Add more X86ISD opcodes once we have test coverage.
case X86ISD::PCMPEQ:
+ case X86ISD::PMULDQ:
case X86ISD::PMULUDQ:
case X86ISD::FMAXC:
case X86ISD::FMINC:
@@ -34007,9 +34008,6 @@ bool X86TargetLowering::SimplifyDemandedVectorEltsForTargetNode(
insertSubVector(UndefVec, ExtOp, 0, TLO.DAG, DL, ExtSizeInBits);
return TLO.CombineTo(Op, Insert);
}
- // Arithmetic Ops.
- case X86ISD::PMULDQ:
- case X86ISD::PMULUDQ:
// Target Shuffles.
case X86ISD::PSHUFB:
case X86ISD::UNPCKL:
OpenPOWER on IntegriCloud