[llvm] [LV][EVL] Disable fixed-order recurrence idiom with EVL tail folding. (PR #122458)
Mel Chen via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 14 01:35:27 PST 2025
================
@@ -1447,9 +1447,11 @@ class LoopVectorizationCostModel {
// Override forced styles if needed.
// FIXME: use actual opcode/data type for analysis here.
// FIXME: Investigate opportunity for fixed vector factor.
- bool EVLIsLegal = UserIC <= 1 &&
- TTI.hasActiveVectorLength(0, nullptr, Align()) &&
- !EnableVPlanNativePath;
+ bool EVLIsLegal =
+ UserIC <= 1 && TTI.hasActiveVectorLength(0, nullptr, Align()) &&
+ !EnableVPlanNativePath &&
+ // FIXME: remove this once fixed-ordered recurrence is supported.
+ Legal->getFixedOrderRecurrences().empty();
----------------
Mel-Chen wrote:
We could block at the EVL lowering phase as well, but it should be clearer to block here, as we also blocked the reduction idiom before.
https://github.com/llvm/llvm-project/pull/122458
More information about the llvm-commits
mailing list