================ @@ -1492,9 +1492,17 @@ static bool isAllActivePredicate(Value *Pred) { if (cast<ScalableVectorType>(Pred->getType())->getMinNumElements() <= cast<ScalableVectorType>(UncastedPred->getType())->getMinNumElements()) Pred = UncastedPred; + if (match(Pred, m_Intrinsic<Intrinsic::aarch64_sve_ptrue>( + m_ConstantInt<AArch64SVEPredPattern::all>()))) + return true; + + if (Value *Splat = getSplatValue(Pred)) { + auto ConstIdx = dyn_cast<ConstantInt>(Splat); + if (ConstIdx->getZExtValue() == 1) + return true; + } ---------------- paulwalker-arm wrote:
It's worth seeing if `Constant::isAllOnesValue(Pred)` works here. https://github.com/llvm/llvm-project/pull/135016 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits