[llvm] [VPlan] Extract reverse operation for reverse accesses (PR #146525)
Luke Lau via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 17 05:22:06 PDT 2025
================
@@ -3341,3 +3363,34 @@ void VPlanTransforms::addBranchWeightToMiddleTerminator(
MDB.createBranchWeights({1, VectorStep - 1}, /*IsExpected=*/false);
MiddleTerm->addMetadata(LLVMContext::MD_prof, BranchWeights);
}
+
+void VPlanTransforms::adjustRecipesForReverseAccesses(VPlan &Plan) {
----------------
lukel97 wrote:
I just did a quick scan and it looks like the only places where reverse is set is in `VPRecipeBuilder::tryToWidenMemory`. Instead of introducing another transform, should we just insert the `VPInstruction::Reverse`s there to avoid having to iterate over all the recipes again?
This way would mean we could also remove the `Reverse` field from `VPWidenMemoryRecipe`
https://github.com/llvm/llvm-project/pull/146525
More information about the llvm-commits
mailing list