summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Grosser <grosser@fim.uni-passau.de>2011-10-23 20:59:26 +0000
committerTobias Grosser <grosser@fim.uni-passau.de>2011-10-23 20:59:26 +0000
commit353a2684bc5ea37f1a5994639a0516c636ba2ada (patch)
treeaf30bfa15a3586dd77a9d05cd3376a6aad71bbad
parent70c31f941192cea2782810659edfa85040590dcf (diff)
downloadbcm5719-llvm-353a2684bc5ea37f1a5994639a0516c636ba2ada.tar.gz
bcm5719-llvm-353a2684bc5ea37f1a5994639a0516c636ba2ada.zip
ScheduleOptimizer: Allow to disable tiling
llvm-svn: 142770
-rw-r--r--polly/lib/ScheduleOptimizer.cpp24
1 files changed, 16 insertions, 8 deletions
diff --git a/polly/lib/ScheduleOptimizer.cpp b/polly/lib/ScheduleOptimizer.cpp
index 3b48bfc154f..6cfa3ffd326 100644
--- a/polly/lib/ScheduleOptimizer.cpp
+++ b/polly/lib/ScheduleOptimizer.cpp
@@ -38,6 +38,11 @@ using namespace llvm;
using namespace polly;
static cl::opt<bool>
+DisableTiling("polly-no-tiling",
+ cl::desc("Disable tiling in the isl scheduler"), cl::Hidden,
+ cl::init(false));
+
+static cl::opt<bool>
Prevector("enable-schedule-prevector",
cl::desc("Enable the prevectorization in the scheduler"), cl::Hidden,
cl::value_desc("Prevectorization enabled"),
@@ -202,14 +207,17 @@ isl_union_map *getTiledPartialSchedule(isl_band *band) {
isl_union_map *tileUnionMap;
partialSchedule = isl_band_get_partial_schedule(band);
- ctx = isl_union_map_get_ctx(partialSchedule);
- Space= isl_union_map_get_space(partialSchedule);
- scheduleDimensions = isl_band_n_member(band);
-
- tileMap = getTileMap(ctx, scheduleDimensions, Space);
- tileUnionMap = isl_union_map_from_map(isl_map_from_basic_map(tileMap));
- tileUnionMap = isl_union_map_align_params(tileUnionMap, Space);
- partialSchedule = isl_union_map_apply_range(partialSchedule, tileUnionMap);
+
+ if (!DisableTiling) {
+ ctx = isl_union_map_get_ctx(partialSchedule);
+ Space= isl_union_map_get_space(partialSchedule);
+ scheduleDimensions = isl_band_n_member(band);
+
+ tileMap = getTileMap(ctx, scheduleDimensions, Space);
+ tileUnionMap = isl_union_map_from_map(isl_map_from_basic_map(tileMap));
+ tileUnionMap = isl_union_map_align_params(tileUnionMap, Space);
+ partialSchedule = isl_union_map_apply_range(partialSchedule, tileUnionMap);
+ }
return partialSchedule;
}
OpenPOWER on IntegriCloud