Lines Matching defs:ReduxWidth
20056 unsigned ReduxWidth = NumReducedVals;
20057 auto GetVectorFactor = [&, &TTI = *TTI](unsigned ReduxWidth) {
20060 ReduxWidth =
20061 getFloorFullVectorNumberOfElements(TTI, ScalarTy, ReduxWidth);
20062 VectorType *Tp = getWidenedType(ScalarTy, ReduxWidth);
20067 assert(ReduxWidth > 0 && "ReduxWidth is unexpectedly 0.");
20068 ReduxWidth = bit_floor(ReduxWidth - 1);
20069 VectorType *Tp = getWidenedType(ScalarTy, ReduxWidth);
20075 ReduxWidth = bit_floor(ReduxWidth);
20076 return ReduxWidth;
20078 if (!VectorizeNonPowerOf2 || !has_single_bit(ReduxWidth + 1))
20079 ReduxWidth = GetVectorFactor(ReduxWidth);
20080 ReduxWidth = std::min(ReduxWidth, MaxElts);
20085 unsigned PrevReduxWidth = ReduxWidth;
20089 if (!CheckForReusedReductionOpsLocal && PrevReduxWidth == ReduxWidth) {
20095 if (Pos < NumReducedVals - ReduxWidth + 1)
20098 --ReduxWidth;
20099 if (ReduxWidth > 1)
20100 ReduxWidth = GetVectorFactor(ReduxWidth);
20105 while (Pos < NumReducedVals - ReduxWidth + 1 &&
20106 ReduxWidth >= ReductionLimit) {
20109 if (CheckForReusedReductionOpsLocal && PrevReduxWidth != ReduxWidth &&
20114 PrevReduxWidth = ReduxWidth;
20115 ArrayRef<Value *> VL(std::next(Candidates.begin(), Pos), ReduxWidth);
20117 if (IgnoredCandidates.contains(std::make_pair(Pos, ReduxWidth)) ||
20118 (!has_single_bit(ReduxWidth) &&
20120 std::make_pair(Pos, bit_floor(ReduxWidth))) ||
20122 std::make_pair(Pos + (ReduxWidth - bit_floor(ReduxWidth)),
20123 bit_floor(ReduxWidth))))) ||
20171 if (Cnt >= Pos && Cnt < Pos + ReduxWidth)
20183 if (Cnt >= Pos && Cnt < Pos + ReduxWidth)
20233 if (ReduxWidth > ReductionLimit && V.isTreeNotExtendable()) {
20236 *TTI, VL.front()->getType(), ReduxWidth - 1);
20243 for (unsigned Idx : seq<unsigned>(ReduxWidth - VF))
20354 Pos += ReduxWidth;
20356 ReduxWidth = NumReducedVals - Pos;
20357 if (ReduxWidth > 1)
20358 ReduxWidth = GetVectorFactor(NumReducedVals - Pos);
20512 unsigned ReduxWidth = ReducedVals.size();
20579 RdxOpcode, !IsSigned, RedTy, getWidenedType(RType, ReduxWidth),