[llvm] [SCEV] Try to push op into ZExt: C * zext (A + B) -> zext (A*C + B*C) (PR #155300)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 26 01:27:44 PDT 2025


================
@@ -3199,6 +3199,22 @@ const SCEV *ScalarEvolution::getMulExpr(SmallVectorImpl<const SCEV *> &Ops,
                                AddRec->getNoWrapFlags(FlagsMask));
         }
       }
+
+      // Try to push the constant operand into a ZExt: C + zext (A + B) ->
----------------
nikic wrote:

```suggestion
      // Try to push the constant operand into a ZExt: C * zext (A + B) ->
```

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


More information about the llvm-commits mailing list