isl 0.25
[isl.git] / isl_schedule_constraints.h
blob8ec3864d5f4aa1c269b81c160a2d06ccb035af1f
1 #ifndef ISL_SCHEDULE_CONSTRAINTS_H
2 #define ISL_SCHEDULE_CONSTRAINTS_H
4 #include <isl/schedule.h>
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
17 __isl_give isl_schedule_constraints *
18 isl_schedule_constraints_align_params(__isl_take isl_schedule_constraints *sc);
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);
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);
31 #endif