Skip to content

Commit

Permalink
[CodeGen] Add support for reductions in ComplexDeinterleaving pass
Browse files Browse the repository at this point in the history
This commit enhances the ComplexDeinterleaving pass to handle unordered
reductions in simple one-block vectorized loops, supporting both
SVE and Neon architectures.

Differential Revision: https://reviews.llvm.org/D152022
  • Loading branch information
igogo-x86 committed Jun 14, 2023
1 parent e0f7b0e commit 2cbc265
Show file tree
Hide file tree
Showing 4 changed files with 386 additions and 111 deletions.
4 changes: 3 additions & 1 deletion llvm/include/llvm/CodeGen/ComplexDeinterleavingPass.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,9 @@ enum class ComplexDeinterleavingOperation {
// The following 'operations' are used to represent internal states. Backends
// are not expected to try and support these in any capacity.
Deinterleave,
Symmetric
Symmetric,
ReductionPHI,
ReductionOperation,
};

enum class ComplexDeinterleavingRotation {
Expand Down
Loading

0 comments on commit 2cbc265

Please sign in to comment.