Searched refs:CountableLoopParser (Results 1 – 11 of 11) sorted by relevance
40 class CountableLoopParser {42 explicit CountableLoopParser(const Loop &loop) : loop_(loop) {} in CountableLoopParser() function44 NO_MOVE_SEMANTIC(CountableLoopParser);45 NO_COPY_SEMANTIC(CountableLoopParser);46 ~CountableLoopParser() = default;
34 std::optional<CountableLoopInfo> CountableLoopParser::Parse() in Parse()63 bool CountableLoopParser::ParseLoopExit() in ParseLoopExit()86 bool CountableLoopParser::TryProcessBackEdge() in TryProcessBackEdge()100 bool CountableLoopParser::HasPreHeaderCompare(Loop *loop, const CountableLoopInfo &loopInfo) in HasPreHeaderCompare()147 std::optional<uint64_t> CountableLoopParser::GetLoopIterations(const CountableLoopInfo &loopInfo) in GetLoopIterations()194 bool CountableLoopParser::IsInstIncOrDec(Inst *inst) in IsInstIncOrDec()209 BasicBlock *CountableLoopParser::FindLoopExitBlock() in FindLoopExitBlock()224 bool CountableLoopParser::SetUpdateAndTestInputs() in SetUpdateAndTestInputs()249 void CountableLoopParser::SetIndexAndConstStep() in SetIndexAndConstStep()270 void CountableLoopParser::SetNormalizedConditionCode() in SetNormalizedConditionCode()[all …]
960 auto iterations = CountableLoopParser::GetLoopIterations(loopInfo); in GetNestedLoopIterations()986 auto loopParser = CountableLoopParser(*loop); in GetSimpleLoopIterationsInfo()1095 …if (!upperRange.IsMoreOrEqual(lowerRange) && !CountableLoopParser::HasPreHeaderCompare(loop, loopI… in ProcessIndexPhi()
145 auto loopParser = CountableLoopParser(*loop); in TransformLoop()150 optIterations = CountableLoopParser::GetLoopIterations(*loopInfo); in TransformLoop()159 CountableLoopParser::HasPreHeaderCompare(loop, *loopInfo); in TransformLoop()192 …!ConditionOverFlow(*loopInfo, unrollFactor) && CountableLoopParser::HasPreHeaderCompare(loop, *loo… in UnrollWithBranching()
67 if (!CountableLoopParser(*loop).Parse().has_value()) { in IsRedundant()
125 auto loopInfoOpt = CountableLoopParser {*loop}.Parse(); in TryTransformArrayInitIdiom()
49 auto loopParser = CountableLoopParser(*loop); in GetLoopIterationsCount()55 auto loopCount = CountableLoopParser::GetLoopIterations(loopInfo.value()); in GetLoopIterationsCount()
495 if (auto loopInfo = CountableLoopParser(*indexLoop).Parse()) { in GetLoopForBoundsCheck()888 auto loopParser = CountableLoopParser(*loop); in FindLoopInfo()895 bool hasPreHeaderCompare = CountableLoopParser::HasPreHeaderCompare(loop, loopInfoValue); in FindLoopInfo()
457 auto loopParser = CountableLoopParser(*loop); in TEST_F()492 auto loopParser = CountableLoopParser(*loop); in TEST_F()537 auto loopParser = CountableLoopParser(*loop); in TEST_F()569 auto loopParser = CountableLoopParser(*loop); in TEST_F()599 auto loopParser = CountableLoopParser(*loop); in TEST_F()
252 auto loopParser = CountableLoopParser(*loop); in IsSmallLoop()257 auto iterations = CountableLoopParser::GetLoopIterations(*loopInfo); in IsSmallLoop()
261 if (auto loopInfo = CountableLoopParser(*loop).Parse()) { in FindForbiddenLoops()262 auto optIterations = CountableLoopParser::GetLoopIterations(*loopInfo); in FindForbiddenLoops()