[llvm] [LV] Strip redundant casts (NFC) (PR #128177)
Ramkumar Ramachandra via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 21 06:01:55 PST 2025
https://github.com/artagnon created https://github.com/llvm/llvm-project/pull/128177
None
>From 186733dffbebd78f64e92f1d7d54c460dedae5c9 Mon Sep 17 00:00:00 2001
From: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: Fri, 21 Feb 2025 13:02:12 +0000
Subject: [PATCH] [LV] Strip redundant casts (NFC)
---
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp b/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
index e8a5db28ea0a4..ffccfbf30e46a 100644
--- a/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+++ b/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
@@ -1243,8 +1243,8 @@ class LoopVectorizationCostModel {
return false;
// Get the source and destination types of the truncate.
- Type *SrcTy = toVectorTy(cast<CastInst>(I)->getSrcTy(), VF);
- Type *DestTy = toVectorTy(cast<CastInst>(I)->getDestTy(), VF);
+ Type *SrcTy = toVectorTy(Trunc->getSrcTy(), VF);
+ Type *DestTy = toVectorTy(Trunc->getDestTy(), VF);
// If the truncate is free for the given types, return false. Replacing a
// free truncate with an induction variable would add an induction variable
@@ -5132,7 +5132,7 @@ LoopVectorizationCostModel::selectInterleaveCount(ElementCount VF,
return 1;
}
- unsigned F = static_cast<unsigned>(MaxNestedScalarReductionIC);
+ unsigned F = MaxNestedScalarReductionIC;
SmallIC = std::min(SmallIC, F);
StoresIC = std::min(StoresIC, F);
LoadsIC = std::min(LoadsIC, F);
@@ -10303,8 +10303,7 @@ static void preparePlanForMainVectorLoop(VPlan &MainPlan, VPlan &EpiPlan) {
EpiWidenedPhis.insert(
cast<PHINode>(R.getVPSingleValue()->getUnderlyingValue()));
}
- for (VPRecipeBase &R : make_early_inc_range(
- *cast<VPIRBasicBlock>(MainPlan.getScalarHeader()))) {
+ for (VPRecipeBase &R : make_early_inc_range(*MainPlan.getScalarHeader())) {
auto *VPIRInst = cast<VPIRInstruction>(&R);
auto *IRI = dyn_cast<PHINode>(&VPIRInst->getInstruction());
if (!IRI)
More information about the llvm-commits
mailing list