From: Simon Pilgrim Date: Wed, 22 May 2019 14:18:17 +0000 (+0000) Subject: LoopVectorizationCostModel::selectInterleaveCount - assert we have a non-zero loop... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=79e92fbf63cd6154c70d947cd365f47f6a33ed07;p=llvm LoopVectorizationCostModel::selectInterleaveCount - assert we have a non-zero loop cost. NFCI. The input LoopCost value can be zero, but if so it should be recalculated with the current VF. After that it should always be non-zero. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@361387 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Transforms/Vectorize/LoopVectorize.cpp b/lib/Transforms/Vectorize/LoopVectorize.cpp index ce03b854ffd..ad3030cedc3 100644 --- a/lib/Transforms/Vectorize/LoopVectorize.cpp +++ b/lib/Transforms/Vectorize/LoopVectorize.cpp @@ -5001,6 +5001,8 @@ unsigned LoopVectorizationCostModel::selectInterleaveCount(bool OptForSize, if (LoopCost == 0) LoopCost = expectedCost(VF).first; + assert(LoopCost && "Non-zero loop cost expected"); + // Clamp the calculated IC to be between the 1 and the max interleave count // that the target allows. if (IC > MaxInterleaveCount)