diff options
Diffstat (limited to 'gcc/graphite-optimize-isl.c')
-rw-r--r-- | gcc/graphite-optimize-isl.c | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/gcc/graphite-optimize-isl.c b/gcc/graphite-optimize-isl.c index 53355bb57dc..c09264bf093 100644 --- a/gcc/graphite-optimize-isl.c +++ b/gcc/graphite-optimize-isl.c @@ -404,7 +404,7 @@ optimize_isl (scop_p scop) isl_options_set_schedule_maximize_band_depth (scop->isl_context, 1); #ifdef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS /* ISL-0.15 or later. */ - isl_options_set_schedule_serialize_sccs (scop->isl_context, 1); + isl_options_set_schedule_maximize_band_depth (scop->isl_context, 1); #else isl_options_set_schedule_fuse (scop->isl_context, ISL_SCHEDULE_FUSE_MIN); #endif @@ -441,11 +441,23 @@ optimize_isl (scop_p scop) #else isl_union_map *schedule_map = get_schedule_map (schedule); #endif - apply_schedule_map_to_scop (scop, schedule_map); - isl_schedule_free (schedule); - isl_union_map_free (schedule_map); - return true; + if (isl_union_map_is_equal (scop->original_schedule, schedule_map)) + { + if (dump_file && dump_flags) + fprintf (dump_file, "\nISL schedule same as original schedule\n"); + + isl_schedule_free (schedule); + isl_union_map_free (schedule_map); + return false; + } + else + { + apply_schedule_map_to_scop (scop, schedule_map); + isl_schedule_free (schedule); + isl_union_map_free (schedule_map); + return true; + } } #endif /* HAVE_isl */ |