[llvm] [LoopVectorize] Vectorize fixed-order recurrence with vscale x 1. (PR #142772)
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Sun Jun 15 07:02:04 PDT 2025
================
@@ -8652,6 +8651,12 @@ static void addExitUsersForFirstOrderRecurrences(
for (VPIRInstruction *ExitIRI : ExitUsersToFix) {
if (ExitIRI->getOperand(0) != FOR)
continue;
+ // For VF vscale x 1, if vscale = 1, we are unable to extract the
+ // penultimate value of the recurrence. Instead, we can extract the last
+ // element directly from VPInstruction::FirstOrderRecurrenceSplice.
----------------
fhahn wrote:
> Instead, we can extract the last element directly from VPInstruction::FirstOrderRecurrenceSplice.
This is done by not removing the user from ExitUsersToFix, right? Could you clarify that the extracts are added later, by`addUsersInExitBlocks`?
https://github.com/llvm/llvm-project/pull/142772
More information about the llvm-commits
mailing list