Lines Matching refs:ScaledReg
514 const SCEV *ScaledReg = nullptr; member
632 if (!ScaledReg) in isCanonical()
641 if (containsAddRecDependentOnLoop(ScaledReg, L)) in isCanonical()
664 assert(ScaledReg && "Expected 1*reg => reg"); in canonicalize()
666 BaseRegs.push_back(ScaledReg); in canonicalize()
668 ScaledReg = nullptr; in canonicalize()
673 if (!ScaledReg) { in canonicalize()
674 ScaledReg = BaseRegs.pop_back_val(); in canonicalize()
681 if (!containsAddRecDependentOnLoop(ScaledReg, L)) { in canonicalize()
686 std::swap(ScaledReg, *I); in canonicalize()
699 BaseRegs.push_back(ScaledReg); in unscale()
700 ScaledReg = nullptr; in unscale()
707 if (BaseRegs.size() != 1 || ScaledReg) in hasZeroEnd()
715 return !!ScaledReg + BaseRegs.size(); in getNumRegs()
722 ScaledReg ? ScaledReg->getType() : in getType()
736 return S == ScaledReg || is_contained(BaseRegs, S); in referencesReg()
743 if (ScaledReg) in hasRegsUsedByUsesOtherThan()
744 if (RegUses.isRegUsedByUsesOtherThan(ScaledReg, LUIdx)) in hasRegsUsedByUsesOtherThan()
777 if (ScaledReg) in print()
778 OS << *ScaledReg; in print()
1514 if (const SCEV *ScaledReg = F.ScaledReg) { in RateFormula() local
1515 if (VisitedRegs.count(ScaledReg)) { in RateFormula()
1519 RatePrimaryRegister(F, ScaledReg, Regs, LoserRegs); in RateFormula()
1703 if (F.ScaledReg) Key.push_back(F.ScaledReg); in HasFormulaWithSameRegs()
1727 if (F.ScaledReg) Key.push_back(F.ScaledReg); in InsertFormula()
1735 assert((!F.ScaledReg || !F.ScaledReg->isZero()) && in InsertFormula()
1747 if (F.ScaledReg) in InsertFormula()
1748 Regs.insert(F.ScaledReg); in InsertFormula()
1766 if (F.ScaledReg) Regs.insert(F.ScaledReg); in RecomputeRegs()
2875 F.ScaledReg == OrigF.ScaledReg && in FindUseWithSimilarFormula()
3679 if (F.ScaledReg) in CountRegisters()
3680 RegUses.countRegister(F.ScaledReg, LUIdx); in CountRegisters()
3919 const SCEV *BaseReg = IsScaledReg ? Base.ScaledReg : Base.BaseRegs[Idx]; in GenerateReassociationsImpl()
3978 F.ScaledReg = nullptr; in GenerateReassociationsImpl()
3982 F.ScaledReg = InnerSum; in GenerateReassociationsImpl()
4097 const SCEV *G = IsScaledReg ? Base.ScaledReg : Base.BaseRegs[Idx]; in GenerateSymbolicOffsetsImpl()
4106 F.ScaledReg = G; in GenerateSymbolicOffsetsImpl()
4144 F.ScaledReg = nullptr; in GenerateConstantOffsetsImpl()
4149 F.ScaledReg = NewG; in GenerateConstantOffsetsImpl()
4157 const SCEV *G = IsScaledReg ? Base.ScaledReg : Base.BaseRegs[Idx]; in GenerateConstantOffsetsImpl()
4196 F.ScaledReg = G; in GenerateConstantOffsetsImpl()
4238 if (Base.ScaledReg && Base.ScaledReg->getType()->isPointerTy()) in GenerateICmpZeroScales()
4298 if (F.ScaledReg) { in GenerateICmpZeroScales()
4299 F.ScaledReg = SE.getMulExpr(F.ScaledReg, FactorS); in GenerateICmpZeroScales()
4300 if (getExactSDiv(F.ScaledReg, FactorS, SE) != Base.ScaledReg) in GenerateICmpZeroScales()
4373 F.ScaledReg = Quotient; in GenerateScales()
4428 if (Base.ScaledReg && Base.ScaledReg->getType()->isPointerTy()) in GenerateTruncates()
4446 if (F.ScaledReg) { in GenerateTruncates()
4448 getAnyExtendConsideringPostIncUses(Loops, F.ScaledReg, SrcTy, SE); in GenerateTruncates()
4451 F.ScaledReg = NewScaledReg; in GenerateTruncates()
4623 if (F.ScaledReg == OrigReg) { in GenerateCrossUseConstantOffsets()
4636 NewF.ScaledReg = SE.getAddExpr(NegImmS, NewF.ScaledReg); in GenerateCrossUseConstantOffsets()
4641 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(NewF.ScaledReg)) { in GenerateCrossUseConstantOffsets()
4799 if (F.ScaledReg && in FilterOutUndesirableDedicatedRegisters()
4800 RegUses.isRegUsedByUsesOtherThan(F.ScaledReg, LUIdx)) in FilterOutUndesirableDedicatedRegisters()
4801 Key.push_back(F.ScaledReg); in FilterOutUndesirableDedicatedRegisters()
5083 if (!F.ScaledReg) in NarrowSearchSpaceByFilterFormulaWithSameScaledReg()
5085 auto P = BestFormulae.insert({{F.ScaledReg, F.Scale}, FIdx}); in NarrowSearchSpaceByFilterFormulaWithSameScaledReg()
5265 if (const SCEV *ScaledReg = F.ScaledReg) { in NarrowSearchSpaceByDeletingCostlyFormulas() local
5266 if (!UniqRegs.count(ScaledReg)) { in NarrowSearchSpaceByDeletingCostlyFormulas()
5268 RegNumMap[ScaledReg] / LU.getNotSelectedProbability(ScaledReg); in NarrowSearchSpaceByDeletingCostlyFormulas()
5269 if (isa<SCEVAddRecExpr>(ScaledReg)) in NarrowSearchSpaceByDeletingCostlyFormulas()
5271 RegNumMap[ScaledReg] / LU.getNotSelectedProbability(ScaledReg); in NarrowSearchSpaceByDeletingCostlyFormulas()
5296 if (F.ScaledReg) in NarrowSearchSpaceByDeletingCostlyFormulas()
5297 UniqRegs.insert(F.ScaledReg); in NarrowSearchSpaceByDeletingCostlyFormulas()
5462 if ((F.ScaledReg && F.ScaledReg == Reg) || in SolveRecurse()
5487 VisitedRegs.insert(F.ScaledReg ? F.ScaledReg : F.BaseRegs[0]); in SolveRecurse()
5727 const SCEV *ScaledS = F.ScaledReg; in Expand()