[llvm] [LLVM][SCEV] udiv (mul nuw a, vscale), (mul nuw b, vscale) -> udiv a, b (PR #157836)

Paul Walker via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 1 04:25:05 PDT 2025


================
@@ -188,3 +188,43 @@ loop:
 exit:
   ret void
 }
+
+define noundef i64 @udiv_mul_common_vscale_factor(i64 %a, i64 %b) {
----------------
paulwalker-arm wrote:

I added `noundef` because without it SCEV seems to loose the wrap flags for one of the multiplies.

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


More information about the llvm-commits mailing list