[llvm] [VPlan] Move EVL-based transforms to VPlanEVLTransforms.cpp (NFC) (PR #209883)
Luke Lau via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 15 21:23:32 PDT 2026
================
@@ -597,6 +599,43 @@ struct VPlanTransforms {
VPCostContext &CostCtx);
};
+/// Removes the permutation pattern \p Perm from any elementwise operations
+/// in the plan, by constructing a new permutation via \p Build.
+/// e.g. binop(perm(x), perm(y)) -> perm(binop(x,y)).
+template <typename Match_t, typename Builder>
+void pullOutPermutations(VPlan &Plan, Match_t Perm, Builder Build) {
----------------
lukel97 wrote:
I don't suppose we can easily move the implementation of this into VPUtils.cpp because of the templates?
https://github.com/llvm/llvm-project/pull/209883
More information about the llvm-commits
mailing list