diff options
| author | Tobias Grosser <grosser@fim.uni-passau.de> | 2011-10-23 20:59:26 +0000 | 
|---|---|---|
| committer | Tobias Grosser <grosser@fim.uni-passau.de> | 2011-10-23 20:59:26 +0000 | 
| commit | 353a2684bc5ea37f1a5994639a0516c636ba2ada (patch) | |
| tree | af30bfa15a3586dd77a9d05cd3376a6aad71bbad /polly/lib | |
| parent | 70c31f941192cea2782810659edfa85040590dcf (diff) | |
| download | bcm5719-llvm-353a2684bc5ea37f1a5994639a0516c636ba2ada.tar.gz bcm5719-llvm-353a2684bc5ea37f1a5994639a0516c636ba2ada.zip  | |
ScheduleOptimizer: Allow to disable tiling
llvm-svn: 142770
Diffstat (limited to 'polly/lib')
| -rw-r--r-- | polly/lib/ScheduleOptimizer.cpp | 24 | 
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;  }  | 

