| /llvm-project-15.0.7/polly/lib/Transform/ |
| H A D | FlattenAlgo.cpp | 165 auto IslCtx = Schedule.ctx(); in tryFlattenSequence() 166 auto ScatterSet = isl::set(Schedule.range()); in tryFlattenSequence() 168 auto ParamSpace = Schedule.get_space().params(); in tryFlattenSequence() 178 auto AllDomains = Schedule.domain(); in tryFlattenSequence() 255 assert(getNumScatterDims(Schedule) >= 2); in tryFlattenLoop() 306 unsigned Dims = getNumScatterDims(Schedule); in flattenSchedule() 313 return Schedule; in flattenSchedule() 318 return Schedule; in flattenSchedule() 321 if (!isVariableDim(Schedule)) { in flattenSchedule() 330 auto NewScheduleLoop = tryFlattenLoop(Schedule); in flattenSchedule() [all …]
|
| H A D | ScheduleOptimizer.cpp | 550 auto Root = Schedule.get_root(); in optimizeSchedule() 617 isl::ctx Ctx = Schedule.ctx(); in printSchedule() 638 auto Root = Schedule.get_root(); in walkScheduleTreeForStatistics() 840 Schedule = SC.compute_schedule(); in runIslScheduleOptimizer() 851 if (Schedule.is_null()) in runIslScheduleOptimizer() 857 Schedule = applyGreedyFusion(Schedule, Validity); in runIslScheduleOptimizer() 858 assert(!Schedule.is_null()); in runIslScheduleOptimizer() 870 Schedule = ScheduleTreeOptimizer::optimizeSchedule(Schedule, &OAI); in runIslScheduleOptimizer() 871 Schedule = hoistExtensionNodes(Schedule); in runIslScheduleOptimizer() 885 LastSchedule = Schedule; in runIslScheduleOptimizer() [all …]
|
| H A D | ZoneAlgo.cpp | 197 computeReachingDefinition(Schedule, Defs, InclDef, InclRedef); in computeScalarReachingDefinition() 218 isl::space ScatterSpace = getScatterSpace(Schedule); in computeScalarReachingDefinition() 222 Schedule, isl::union_set(Writes), InclDef, InclRedef); in computeScalarReachingDefinition() 264 Schedule(S->getSchedule()) { in ZoneAlgorithm() 267 Schedule = Schedule.intersect_domain(Domains); in ZoneAlgorithm() 268 ParamSpace = Schedule.get_space(); in ZoneAlgorithm() 269 ScatterSpace = getScatterSpace(Schedule); in ZoneAlgorithm() 618 return Schedule.extract_map(ResultSpace); in getScatterFor() 626 return Schedule.intersect_domain(Domain); in getScatterFor() 994 computeReachingDefinition(Schedule, AllWrites, false, true); in computeCommon() [all …]
|
| /llvm-project-15.0.7/polly/unittests/ScheduleOptimizer/ |
| H A D | ScheduleTreeTransformTest.cpp | 25 isl::map Schedule( in TEST() local 27 isl::set ScheduleRange = Schedule.range(); in TEST() 37 isl::map Schedule( in TEST() local 39 isl::set ScheduleRange = Schedule.range(); in TEST() 49 isl::map Schedule( in TEST() local 51 isl::set ScheduleRange = Schedule.range(); in TEST()
|
| /llvm-project-15.0.7/polly/lib/Analysis/ |
| H A D | PolyhedralInfo.cpp | 90 isl_union_map *Schedule = getScheduleForLoop(S, L); in checkParallel() local 91 LLVM_DEBUG(dbgs() << "Schedule: \t" << stringFromIslObj(Schedule, "null") in checkParallel() 94 IsParallel = D.isParallel(Schedule, Deps, MinDepDistPtr); in checkParallel() 95 isl_union_map_free(Schedule); in checkParallel() 126 isl_union_map *Schedule = isl_union_map_empty(S->getParamSpace().release()); in getScheduleForLoop() local 145 Schedule = in getScheduleForLoop() 146 isl_union_map_union(Schedule, isl_union_map_from_map(ScheduleMap)); in getScheduleForLoop() 149 Schedule = isl_union_map_coalesce(Schedule); in getScheduleForLoop() 150 return Schedule; in getScheduleForLoop()
|
| H A D | DependenceInfo.cpp | 161 isl_map *Schedule = tag(StmtScheduleMap, MA, Level); in collectInfo() local 312 isl_schedule *Schedule; in calculateDependences() local 328 Schedule = S.getScheduleTree().release(); in calculateDependences() 337 Schedule = isl_schedule_pullback_union_pw_multi_aff(Schedule, Tags); in calculateDependences() 360 Schedule = isl_schedule_pullback_union_pw_multi_aff(Schedule, Tags); in calculateDependences() 366 dbgs() << "Schedule: " << Schedule << "\n"); in calculateDependences() 454 Flow = buildFlow(Read, nullptr, Write, nullptr, Schedule); in calculateDependences() 471 isl_schedule_free(Schedule); in calculateDependences() 674 Schedule = Schedule.unite(StmtScat); in isValidSchedule() 677 Dependences = Dependences.apply_domain(Schedule); in isValidSchedule() [all …]
|
| /llvm-project-15.0.7/polly/test/ScopInfo/ |
| H A D | polly-timeout-parameter-bounds.ll | 7 ; CHECK-NEXT: Schedule := 14 ; CHECK-NEXT: Schedule := 21 ; CHECK-NEXT: Schedule := 28 ; CHECK-NEXT: Schedule := 35 ; CHECK-NEXT: Schedule := 42 ; CHECK-NEXT: Schedule := 49 ; CHECK-NEXT: Schedule := 56 ; CHECK-NEXT: Schedule := 63 ; CHECK-NEXT: Schedule := 70 ; CHECK-NEXT: Schedule := [all …]
|
| H A D | cfg_consequences.ll | 50 ; CHECK-NEXT: Schedule := 57 ; CHECK-NEXT: Schedule := 64 ; CHECK-NEXT: Schedule := 71 ; CHECK-NEXT: Schedule := 78 ; CHECK-NEXT: Schedule := 85 ; CHECK-NEXT: Schedule := 92 ; CHECK-NEXT: Schedule := 99 ; CHECK-NEXT: Schedule := 106 ; CHECK-NEXT: Schedule := 113 ; CHECK-NEXT: Schedule := [all …]
|
| H A D | many-scalar-dependences.ll | 26 ; CHECK-NEXT: Schedule := 35 ; CHECK-NEXT: Schedule := 44 ; CHECK-NEXT: Schedule := 55 ; CHECK-NEXT: Schedule := 64 ; CHECK-NEXT: Schedule := 75 ; CHECK-NEXT: Schedule := 84 ; CHECK-NEXT: Schedule := 91 ; CHECK-NEXT: Schedule := 104 ; CHECK-NEXT: Schedule := 113 ; CHECK-NEXT: Schedule := [all …]
|
| H A D | unnamed_nonaffine.ll | 23 ; CHECK-NEXT: Schedule := 30 ; CHECK-NEXT: Schedule := 37 ; CHECK-NEXT: Schedule := 44 ; CHECK-NEXT: Schedule := 63 ; UNNAMED-NEXT: Schedule := 70 ; UNNAMED-NEXT: Schedule := 77 ; UNNAMED-NEXT: Schedule := 84 ; UNNAMED-NEXT: Schedule :=
|
| H A D | invariant_load_canonicalize_array_baseptrs_2.ll | 12 ; CHECK-NEXT: Schedule := 19 ; CHECK-NEXT: Schedule := 26 ; CHECK-NEXT: Schedule := 35 ; CHECK-NEXT: Schedule := 42 ; CHECK-NEXT: Schedule :=
|
| H A D | phi_scalar_simple_2.ll | 15 ; CHECK-NEXT: Schedule := 26 ; CHECK-NEXT: Schedule := 35 ; CHECK-NEXT: Schedule := 44 ; CHECK-NEXT: Schedule := 53 ; CHECK-NEXT: Schedule := 64 ; CHECK-NEXT: Schedule := 73 ; CHECK-NEXT: Schedule := 82 ; CHECK-NEXT: Schedule :=
|
| H A D | full-function.ll | 11 ; FULL-NEXT: Schedule := 18 ; FULL-NEXT: Schedule := 29 ; WITHOUT-FULL-NEXT: Schedule := 40 ; WITHOUT-FULL-NEXT: Schedule :=
|
| H A D | phi_scalar_simple_1.ll | 21 ; CHECK-NEXT: Schedule := 30 ; CHECK-NEXT: Schedule := 39 ; CHECK-NEXT: Schedule := 50 ; CHECK-NEXT: Schedule := 61 ; CHECK-NEXT: Schedule := 70 ; CHECK-NEXT: Schedule :=
|
| H A D | phi_condition_modeling_2.ll | 18 ; CHECK-NEXT: Schedule := 25 ; CHECK-NEXT: Schedule := 32 ; CHECK-NEXT: Schedule := 41 ; CHECK-NEXT: Schedule :=
|
| H A D | unprofitable_scalar-accs.ll | 53 ; CHECK-NEXT: Schedule := 60 ; CHECK-NEXT: Schedule := 69 ; CHECK-NEXT: Schedule := 80 ; CHECK-NEXT: Schedule := 89 ; CHECK-NEXT: Schedule :=
|
| H A D | phi_after_error_block.ll | 41 ; CHECK-NEXT: Schedule := 48 ; CHECK-NEXT: Schedule := 57 ; CHECK-NEXT: Schedule :=
|
| /llvm-project-15.0.7/llvm/lib/Target/AMDGPU/ |
| H A D | GCNIterativeScheduler.h | 56 std::vector<MachineInstr *> Schedule; member 85 Range &&Schedule) const; 95 ScheduleRef Schedule, 100 std::vector<MachineInstr*> detachSchedule(ScheduleRef Schedule) const; 105 void scheduleRegion(Region &R, Range &&Schedule,
|
| H A D | GCNIterativeScheduler.cpp | 265 Range &&Schedule) const { in getSchedulePressure() 277 for (auto I = Schedule.end(), B = Schedule.begin(); I != B;) { in getSchedulePressure() 321 GCNIterativeScheduler::detachSchedule(ScheduleRef Schedule) const { in detachSchedule() 323 Res.reserve(Schedule.size() * 2); in detachSchedule() 329 for (auto SU : Schedule) { in detachSchedule() 341 ScheduleRef Schedule, in setBestSchedule() argument 344 new TentativeSchedule{ detachSchedule(Schedule), MaxRP }); in setBestSchedule() 356 void GCNIterativeScheduler::scheduleRegion(Region &R, Range &&Schedule, in scheduleRegion() argument 361 const auto SchedMaxRP = getSchedulePressure(R, Schedule); in scheduleRegion() 365 for (const auto &I : Schedule) { in scheduleRegion() [all …]
|
| H A D | GCNILPSched.cpp | 312 std::vector<const SUnit*> Schedule; in schedule() local 313 Schedule.reserve(SUnits.size()); in schedule() 342 Schedule.push_back(SU); in schedule() 345 assert(SUnits.size() == Schedule.size()); in schedule() 347 std::reverse(Schedule.begin(), Schedule.end()); in schedule() 353 return Schedule; in schedule()
|
| H A D | GCNMinRegStrategy.cpp | 228 std::vector<const SUnit*> Schedule; in schedule() local 229 Schedule.reserve(SUnits.size()); in schedule() 256 Schedule.push_back(SU); in schedule() 264 assert(SUnits.size() == Schedule.size()); in schedule() 266 return Schedule; in schedule()
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/ |
| H A D | ModuloSchedule.cpp | 68 BB = Schedule.getLoop()->getTopBlock(); in expand() 76 int DefStage = Schedule.getStage(MI); in expand() 1184 int DefCycle = Schedule.getCycle(&Phi); in isLoopCarried() 1185 int DefStage = Schedule.getStage(&Phi); in isLoopCarried() 1193 int LoopCycle = Schedule.getCycle(Use); in isLoopCarried() 1194 int LoopStage = Schedule.getStage(Use); in isLoopCarried() 1936 int TC = Schedule.getNumStages() - 1; in fixupBranches() 1981 KernelRewriter KR(*Schedule.getLoop(), Schedule, BB); in rewriteKernel() 1988 LLVM_DEBUG(Schedule.dump()); in expand() 2005 Schedule.print(OS); in validateAgainstModuloScheduleExpander() [all …]
|
| /llvm-project-15.0.7/llvm/include/llvm/CodeGen/ |
| H A D | ModuloSchedule.h | 169 ModuloSchedule &Schedule; variable 237 if ((int)CurStage > Schedule.getNumStages() - 1 && Stages.first == 0 && in getStagesForReg() 264 : Schedule(S), MF(MF), ST(MF.getSubtarget()), MRI(MF.getRegInfo()), in ModuloScheduleExpander() 284 : Schedule(S), MF(MF), ST(MF.getSubtarget()), MRI(MF.getRegInfo()), in PeelingModuloScheduleExpander() 294 ModuloSchedule &Schedule; 361 return Schedule.getStage(MI); in getStage()
|
| /llvm-project-15.0.7/polly/lib/Support/ |
| H A D | ISLTools.cpp | 163 unsigned polly::getNumScatterDims(const isl::union_map &Schedule) { in getNumScatterDims() argument 165 for (isl::map Map : Schedule.get_map_list()) { in getNumScatterDims() 175 if (Schedule.is_null()) in getScatterSpace() 177 unsigned Dims = getNumScatterDims(Schedule); in getScatterSpace() 306 isl::space ScatterSpace = getScatterSpace(Schedule); in computeReachingWrite() 321 isl::union_map WriteAction = Schedule.apply_domain(Writes); in computeReachingWrite() 350 return ReachableWrites.apply_range(Schedule.reverse()); in computeReachingWrite() 358 isl::union_map ReadActions = Schedule.apply_domain(Reads); in computeArrayUnused() 359 isl::union_map WriteActions = Schedule.apply_domain(Writes); in computeArrayUnused() 363 Writes.reverse().range_map().apply_range(Schedule); in computeArrayUnused() [all …]
|
| /llvm-project-15.0.7/polly/unittests/Flatten/ |
| H A D | FlattenTest.cpp | 30 auto Schedule = isl::union_map(Ctx, ScheduleStr); in checkFlatten() local 33 auto Result = flattenSchedule(std::move(Schedule)); in checkFlatten()
|