diff --git a/llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h b/llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h index 8f9ce7a74b58b..49bce44239087 100644 --- a/llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h +++ b/llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h @@ -108,11 +108,8 @@ template struct int_pred_ty { Value *V = VPV->getLiveInIRValue(); if (!V) return false; + assert(!V->getType()->isVectorTy() && "Unexpected vector live-in"); const auto *CI = dyn_cast(V); - if (!CI && V->getType()->isVectorTy()) - if (const auto *C = dyn_cast(V)) - CI = dyn_cast_or_null( - C->getSplatValue(/*AllowPoison=*/false)); if (!CI) return false;