[all-commits] [llvm/llvm-project] f94368: [LV] Add support for absolute difference partial r...
Benjamin Maxwell via All-commits
all-commits at lists.llvm.org
Thu Apr 16 01:25:10 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: f943685879121b02d568c0ae7e0c95a89a2323e3
https://github.com/llvm/llvm-project/commit/f943685879121b02d568c0ae7e0c95a89a2323e3
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-04-16 (Thu, 16 Apr 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-usabs.ll
A llvm/test/Transforms/LoopVectorize/VPlan/AArch64/partial-reduce-usabs.ll
Log Message:
-----------
[LV] Add support for absolute difference partial reductions (#188043)
This adds support for partial reductions where the extended operand is a
signed or unsigned absolute difference.
We match the absolute difference as `abs(sub(ext(X), ext(Y)))`, where
`type(X) == type(Y)` and both extends are the same kind (sext/zext).
This is then handled the same as an operand without a binop
(`ext(...)`), as we will transform the operand to
`ext(absolute-difference(A, B))` when we rewrite the reduction chain to
partial reductions.
This is an alternative to #162296.
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