[llvm] [LV] Support EVL for partial reduction and VPExpressionRecipe. (PR #205741)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 18 20:53:00 PDT 2026


================
@@ -3440,7 +3442,26 @@ void VPReductionEVLRecipe::execute(VPTransformState &State) {
     Mask = Builder.CreateVectorSplat(State.VF, Builder.getTrue());
 
   Value *NewRed;
-  if (isOrdered()) {
+  if (isPartialReduction()) {
+    // For partial reduction, we need to generate the predicated select
+    // (vp.merge) since `@llvm.vector.partial.reduce()` doesn't have vector
+    // predicated version.
----------------
lukel97 wrote:

Nit
```suggestion
    // For partial reductions, we need to generate a predicated select
    // (vp.merge) since `@llvm.vector.partial.reduce()` doesn't have a vector
    // predicated version.
```

https://github.com/llvm/llvm-project/pull/205741


More information about the llvm-commits mailing list