Lines Matching refs:ScaledReg
386 const SCEV *ScaledReg = nullptr; member
504 if (!ScaledReg) in isCanonical()
513 if (containsAddRecDependentOnLoop(ScaledReg, L)) in isCanonical()
536 assert(ScaledReg && "Expected 1*reg => reg"); in canonicalize()
538 BaseRegs.push_back(ScaledReg); in canonicalize()
540 ScaledReg = nullptr; in canonicalize()
545 if (!ScaledReg) { in canonicalize()
546 ScaledReg = BaseRegs.pop_back_val(); in canonicalize()
553 if (!containsAddRecDependentOnLoop(ScaledReg, L)) { in canonicalize()
558 std::swap(ScaledReg, *I); in canonicalize()
571 BaseRegs.push_back(ScaledReg); in unscale()
572 ScaledReg = nullptr; in unscale()
579 if (BaseRegs.size() != 1 || ScaledReg) in hasZeroEnd()
587 return !!ScaledReg + BaseRegs.size(); in getNumRegs()
594 ScaledReg ? ScaledReg->getType() : in getType()
608 return S == ScaledReg || is_contained(BaseRegs, S); in referencesReg()
615 if (ScaledReg) in hasRegsUsedByUsesOtherThan()
616 if (RegUses.isRegUsedByUsesOtherThan(ScaledReg, LUIdx)) in hasRegsUsedByUsesOtherThan()
649 if (ScaledReg) in print()
650 OS << *ScaledReg; in print()
1378 if (const SCEV *ScaledReg = F.ScaledReg) { in RateFormula() local
1379 if (VisitedRegs.count(ScaledReg)) { in RateFormula()
1383 RatePrimaryRegister(F, ScaledReg, Regs, LoserRegs); in RateFormula()
1562 if (F.ScaledReg) Key.push_back(F.ScaledReg); in HasFormulaWithSameRegs()
1586 if (F.ScaledReg) Key.push_back(F.ScaledReg); in InsertFormula()
1594 assert((!F.ScaledReg || !F.ScaledReg->isZero()) && in InsertFormula()
1606 if (F.ScaledReg) in InsertFormula()
1607 Regs.insert(F.ScaledReg); in InsertFormula()
1625 if (F.ScaledReg) Regs.insert(F.ScaledReg); in RecomputeRegs()
2679 F.ScaledReg == OrigF.ScaledReg && in FindUseWithSimilarFormula()
3444 if (F.ScaledReg) in CountRegisters()
3445 RegUses.countRegister(F.ScaledReg, LUIdx); in CountRegisters()
3684 const SCEV *BaseReg = IsScaledReg ? Base.ScaledReg : Base.BaseRegs[Idx]; in GenerateReassociationsImpl()
3739 F.ScaledReg = nullptr; in GenerateReassociationsImpl()
3743 F.ScaledReg = InnerSum; in GenerateReassociationsImpl()
3856 const SCEV *G = IsScaledReg ? Base.ScaledReg : Base.BaseRegs[Idx]; in GenerateSymbolicOffsetsImpl()
3865 F.ScaledReg = G; in GenerateSymbolicOffsetsImpl()
3900 F.ScaledReg = nullptr; in GenerateConstantOffsetsImpl()
3905 F.ScaledReg = NewG; in GenerateConstantOffsetsImpl()
3913 const SCEV *G = IsScaledReg ? Base.ScaledReg : Base.BaseRegs[Idx]; in GenerateConstantOffsetsImpl()
3949 F.ScaledReg = G; in GenerateConstantOffsetsImpl()
3991 if (Base.ScaledReg && Base.ScaledReg->getType()->isPointerTy()) in GenerateICmpZeroScales()
4047 if (F.ScaledReg) { in GenerateICmpZeroScales()
4048 F.ScaledReg = SE.getMulExpr(F.ScaledReg, FactorS); in GenerateICmpZeroScales()
4049 if (getExactSDiv(F.ScaledReg, FactorS, SE) != Base.ScaledReg) in GenerateICmpZeroScales()
4122 F.ScaledReg = Quotient; in GenerateScales()
4177 if (Base.ScaledReg && Base.ScaledReg->getType()->isPointerTy()) in GenerateTruncates()
4195 if (F.ScaledReg) { in GenerateTruncates()
4197 getAnyExtendConsideringPostIncUses(Loops, F.ScaledReg, SrcTy, SE); in GenerateTruncates()
4200 F.ScaledReg = NewScaledReg; in GenerateTruncates()
4359 if (F.ScaledReg == OrigReg) { in GenerateCrossUseConstantOffsets()
4370 NewF.ScaledReg = SE.getAddExpr(NegImmS, NewF.ScaledReg); in GenerateCrossUseConstantOffsets()
4375 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(NewF.ScaledReg)) in GenerateCrossUseConstantOffsets()
4516 if (F.ScaledReg && in FilterOutUndesirableDedicatedRegisters()
4517 RegUses.isRegUsedByUsesOtherThan(F.ScaledReg, LUIdx)) in FilterOutUndesirableDedicatedRegisters()
4518 Key.push_back(F.ScaledReg); in FilterOutUndesirableDedicatedRegisters()
4796 if (!F.ScaledReg) in NarrowSearchSpaceByFilterFormulaWithSameScaledReg()
4798 auto P = BestFormulae.insert({{F.ScaledReg, F.Scale}, FIdx}); in NarrowSearchSpaceByFilterFormulaWithSameScaledReg()
4978 if (const SCEV *ScaledReg = F.ScaledReg) { in NarrowSearchSpaceByDeletingCostlyFormulas() local
4979 if (!UniqRegs.count(ScaledReg)) { in NarrowSearchSpaceByDeletingCostlyFormulas()
4981 RegNumMap[ScaledReg] / LU.getNotSelectedProbability(ScaledReg); in NarrowSearchSpaceByDeletingCostlyFormulas()
4982 if (isa<SCEVAddRecExpr>(ScaledReg)) in NarrowSearchSpaceByDeletingCostlyFormulas()
4984 RegNumMap[ScaledReg] / LU.getNotSelectedProbability(ScaledReg); in NarrowSearchSpaceByDeletingCostlyFormulas()
5009 if (F.ScaledReg) in NarrowSearchSpaceByDeletingCostlyFormulas()
5010 UniqRegs.insert(F.ScaledReg); in NarrowSearchSpaceByDeletingCostlyFormulas()
5175 if ((F.ScaledReg && F.ScaledReg == Reg) || in SolveRecurse()
5200 VisitedRegs.insert(F.ScaledReg ? F.ScaledReg : F.BaseRegs[0]); in SolveRecurse()
5430 const SCEV *ScaledS = F.ScaledReg; in Expand()