isl_tab_basic_map_partial_lexopt: properly normalize divs
[platform/upstream/isl.git] / isl_schedule_private.h
index 19801e6..cbf1f9c 100644 (file)
@@ -8,15 +8,16 @@
  * In particular, we keep track of the number of bands and for each
  * band, the starting position of the next band.  The first band starts at
  * position 0.
- * For each scheduling dimension, we keep track of whether it is parallel
- * (within its band) with respect to the proximity edges.
+ * For each scheduling dimension, we keep track of whether it result
+ * in zero dependence distances (within its band) with respect
+ * to the proximity edges.
  */
 struct isl_schedule_node {
        isl_map *sched;
        int      n_band;
        int     *band_end;
        int     *band_id;
-       int     *parallel;
+       int     *zero;
 };
 
 /* Information about the computed schedule.
@@ -24,6 +25,8 @@ struct isl_schedule_node {
  * n_band is the maximal number of bands.
  * n_total_row is the number of coordinates of the schedule.
  * dim contains a description of the parameters.
+ * band_forest points to a band forest representation of the schedule
+ * and may be NULL if the forest hasn't been created yet.
  */
 struct isl_schedule {
        int ref;
@@ -31,7 +34,9 @@ struct isl_schedule {
        int n;
        int n_band;
        int n_total_row;
-       isl_dim *dim;
+       isl_space *dim;
+
+       isl_band_list *band_forest;
 
        struct isl_schedule_node node[1];
 };