[all-commits] [llvm/llvm-project] 978468: [LV] Allow reductions with partial alias masking (...

Benjamin Maxwell via All-commits all-commits at lists.llvm.org
Fri Jun 5 05:38:19 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 978468398d2e991772e86efe249c64c4fd2ab762
      https://github.com/llvm/llvm-project/commit/978468398d2e991772e86efe249c64c4fd2ab762
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/alias-mask.ll
    M llvm/test/Transforms/LoopVectorize/alias-mask-negative-tests.ll
    M llvm/test/Transforms/LoopVectorize/alias-mask.ll

  Log Message:
  -----------
  [LV] Allow reductions with partial alias masking (#200813)

This patch enables reductions with partial alias masking by forcing the
use of a predicated reduction select with alias masking. This prevents
poison values from being propagated to the header phi for lanes outside
the alias mask.

Note: An alternate approach would be to select the identity value before
the final horizontal reduction (outside the vector loop). That however,
does not generalize to all reduction kinds (e.g., AnyOf), and at least
for AArch64 SVE, we already prefer the in-loop selects.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list