Home | History | Annotate | Line # | Download | only in dist
      1 #ifndef ISL_SCHEDULE_CONSTRAINTS_H
      2 #define ISL_SCHEDULE_CONSTRAINTS_H
      3 
      4 #include <isl/schedule.h>
      5 
      6 enum isl_edge_type {
      7 	isl_edge_validity = 0,
      8 	isl_edge_first = isl_edge_validity,
      9 	isl_edge_coincidence,
     10 	isl_edge_condition,
     11 	isl_edge_conditional_validity,
     12 	isl_edge_proximity,
     13 	isl_edge_last = isl_edge_proximity,
     14 	isl_edge_local
     15 };
     16 
     17 __isl_give isl_schedule_constraints *
     18 isl_schedule_constraints_align_params(__isl_take isl_schedule_constraints *sc);
     19 
     20 __isl_give isl_union_map *isl_schedule_constraints_get(
     21 	__isl_keep isl_schedule_constraints *sc, enum isl_edge_type type);
     22 __isl_give isl_schedule_constraints *isl_schedule_constraints_add(
     23 	__isl_take isl_schedule_constraints *sc, enum isl_edge_type type,
     24 	__isl_take isl_union_map *c);
     25 
     26 int isl_schedule_constraints_n_basic_map(
     27 	__isl_keep isl_schedule_constraints *sc);
     28 isl_size isl_schedule_constraints_n_map(
     29 	__isl_keep isl_schedule_constraints *sc);
     30 
     31 #endif
     32