From 1d554b7441258c8074c912c674f51b1b17625a38 Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Mon, 15 Jul 2019 08:48:47 +0000 Subject: [LoopVectorize] Pass unfiltered list of arguments to getIntrinsicInstCost. We do not compute the scalarization overhead in getVectorIntrinsicCost and TTI::getIntrinsicInstrCost requires the full arguments list. llvm-svn: 366049 --- llvm/lib/Transforms/Vectorize/LoopVectorize.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'llvm/lib/Transforms/Vectorize') diff --git a/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp b/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp index 22cf9c7db94..46265e3f3e1 100644 --- a/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp +++ b/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp @@ -3149,11 +3149,8 @@ unsigned LoopVectorizationCostModel::getVectorIntrinsicCost(CallInst *CI, if (auto *FPMO = dyn_cast(CI)) FMF = FPMO->getFastMathFlags(); - // Skip operands that do not require extraction/scalarization and do not incur - // any overhead. - return TTI.getIntrinsicInstrCost( - ID, CI->getType(), filterExtractingOperands(CI->arg_operands(), VF), FMF, - VF); + SmallVector Operands(CI->arg_operands()); + return TTI.getIntrinsicInstrCost(ID, CI->getType(), Operands, FMF, VF); } static Type *smallestIntegerVectorType(Type *T1, Type *T2) { -- cgit v1.2.3