diff options
Diffstat (limited to 'llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp')
-rw-r--r-- | llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp index 1e23e706c13..9468223f9e6 100644 --- a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp +++ b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp @@ -2372,25 +2372,21 @@ int BoUpSLP::getEntryCost(TreeEntry *E) { return ReuseShuffleCost + VecCallCost - ScalarCallCost; } case Instruction::ShuffleVector: { - TargetTransformInfo::OperandValueKind Op1VK = - TargetTransformInfo::OK_AnyValue; - TargetTransformInfo::OperandValueKind Op2VK = - TargetTransformInfo::OK_AnyValue; int ScalarCost = 0; if (NeedToShuffleReuses) { for (unsigned Idx : E->ReuseShuffleIndices) { Instruction *I = cast<Instruction>(VL[Idx]); if (!I) continue; - ReuseShuffleCost -= TTI->getArithmeticInstrCost( - I->getOpcode(), ScalarTy, Op1VK, Op2VK); + ReuseShuffleCost -= + TTI->getArithmeticInstrCost(I->getOpcode(), ScalarTy); } for (Value *V : VL) { Instruction *I = cast<Instruction>(V); if (!I) continue; - ReuseShuffleCost += TTI->getArithmeticInstrCost( - I->getOpcode(), ScalarTy, Op1VK, Op2VK); + ReuseShuffleCost += + TTI->getArithmeticInstrCost(I->getOpcode(), ScalarTy); } } int VecCost = 0; @@ -2398,17 +2394,14 @@ int BoUpSLP::getEntryCost(TreeEntry *E) { Instruction *I = cast<Instruction>(i); if (!I) break; - ScalarCost += - TTI->getArithmeticInstrCost(I->getOpcode(), ScalarTy, Op1VK, Op2VK); + ScalarCost += TTI->getArithmeticInstrCost(I->getOpcode(), ScalarTy); } // VecCost is equal to sum of the cost of creating 2 vectors // and the cost of creating shuffle. Instruction *I0 = cast<Instruction>(VL[0]); - VecCost = - TTI->getArithmeticInstrCost(I0->getOpcode(), VecTy, Op1VK, Op2VK); + VecCost = TTI->getArithmeticInstrCost(I0->getOpcode(), VecTy); Instruction *I1 = cast<Instruction>(VL[1]); - VecCost += - TTI->getArithmeticInstrCost(I1->getOpcode(), VecTy, Op1VK, Op2VK); + VecCost += TTI->getArithmeticInstrCost(I1->getOpcode(), VecTy); VecCost += TTI->getShuffleCost(TargetTransformInfo::SK_Select, VecTy, 0); return ReuseShuffleCost + VecCost - ScalarCost; } |