[polly] r337238 - [FlattenAlgo] Replace some isl foreach calls with for loops
Tobias Grosser via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 16 23:11:53 PDT 2018
Author: grosser
Date: Mon Jul 16 23:11:53 2018
New Revision: 337238
URL: http://llvm.org/viewvc/llvm-project?rev=337238&view=rev
Log:
[FlattenAlgo] Replace some isl foreach calls with for loops
Replace foreach calls which only return 'ok' with for loops.
Modified:
polly/trunk/lib/Transform/FlattenAlgo.cpp
Modified: polly/trunk/lib/Transform/FlattenAlgo.cpp
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/lib/Transform/FlattenAlgo.cpp?rev=337238&r1=337237&r2=337238&view=diff
==============================================================================
--- polly/trunk/lib/Transform/FlattenAlgo.cpp (original)
+++ polly/trunk/lib/Transform/FlattenAlgo.cpp Mon Jul 16 23:11:53 2018
@@ -113,11 +113,10 @@ isl::union_map scheduleProjectOut(const
have no effect on schedule ranges */
auto Result = isl::union_map::empty(UMap.get_space());
- UMap.foreach_map([=, &Result](isl::map Map) -> isl::stat {
+ for (isl::map Map : UMap.get_map_list()) {
auto Outprojected = Map.project_out(isl::dim::out, first, n);
Result = Result.add_map(Outprojected);
- return isl::stat::ok;
- });
+ }
return Result;
}
@@ -128,23 +127,20 @@ isl::union_map scheduleProjectOut(const
/// number of dimensions is not supported by the other code in this file.
size_t scheduleScatterDims(const isl::union_map &Schedule) {
unsigned Dims = 0;
- Schedule.foreach_map([&Dims](isl::map Map) -> isl::stat {
+ for (isl::map Map : Schedule.get_map_list())
Dims = std::max(Dims, Map.dim(isl::dim::out));
- return isl::stat::ok;
- });
return Dims;
}
/// Return the @p pos' range dimension, converted to an isl_union_pw_aff.
isl::union_pw_aff scheduleExtractDimAff(isl::union_map UMap, unsigned pos) {
auto SingleUMap = isl::union_map::empty(UMap.get_space());
- UMap.foreach_map([=, &SingleUMap](isl::map Map) -> isl::stat {
- auto MapDims = Map.dim(isl::dim::out);
- auto SingleMap = Map.project_out(isl::dim::out, 0, pos);
+ for (isl::map Map : UMap.get_map_list()) {
+ unsigned MapDims = Map.dim(isl::dim::out);
+ isl::map SingleMap = Map.project_out(isl::dim::out, 0, pos);
SingleMap = SingleMap.project_out(isl::dim::out, 1, MapDims - pos - 1);
SingleUMap = SingleUMap.add_map(SingleMap);
- return isl::stat::ok;
- });
+ };
auto UAff = isl::union_pw_multi_aff(SingleUMap);
auto FirstMAff = isl::multi_union_pw_aff(UAff);
More information about the llvm-commits
mailing list