extract out shared isl_schedule_node_grandchild
[isl.git] / isl_options_private.h
blob97297d8063c44e408846315fe8fc9af0490254f1
1 #ifndef ISL_OPTIONS_PRIVATE_H
2 #define ISL_OPTIONS_PRIVATE_H
4 #include <isl/options.h>
6 struct isl_options {
7 #define ISL_CONTEXT_GBR 0
8 #define ISL_CONTEXT_LEXMIN 1
9 unsigned context;
11 #define ISL_GBR_NEVER 0
12 #define ISL_GBR_ONCE 1
13 #define ISL_GBR_ALWAYS 2
14 unsigned gbr;
15 unsigned gbr_only_first;
17 #define ISL_CLOSURE_ISL 0
18 #define ISL_CLOSURE_BOX 1
19 unsigned closure;
21 int bound;
22 unsigned on_error;
24 #define ISL_BERNSTEIN_FACTORS 1
25 #define ISL_BERNSTEIN_INTERVALS 2
26 int bernstein_recurse;
28 int bernstein_triangulate;
30 int pip_symmetry;
32 #define ISL_CONVEX_HULL_WRAP 0
33 #define ISL_CONVEX_HULL_FM 1
34 int convex;
36 int coalesce_bounded_wrapping;
37 int coalesce_preserve_locals;
39 int schedule_max_coefficient;
40 int schedule_max_constant_term;
41 int schedule_parametric;
42 int schedule_outer_coincidence;
43 int schedule_maximize_band_depth;
44 int schedule_maximize_coincidence;
45 int schedule_split_scaled;
46 int schedule_treat_coalescing;
47 int schedule_separate_components;
48 int schedule_whole_component;
49 unsigned schedule_algorithm;
50 int schedule_carry_self_first;
51 int schedule_serialize_sccs;
53 int tile_scale_tile_loops;
54 int tile_shift_point_loops;
56 char *ast_iterator_type;
57 int ast_always_print_block;
58 int ast_print_outermost_block;
59 int ast_print_macro_once;
61 int ast_build_atomic_upper_bound;
62 int ast_build_prefer_pdiv;
63 int ast_build_detect_min_max;
64 int ast_build_exploit_nested_bounds;
65 int ast_build_group_coscheduled;
66 int ast_build_separation_bounds;
67 int ast_build_scale_strides;
68 int ast_build_allow_else;
69 int ast_build_allow_or;
71 int print_stats;
72 unsigned long max_operations;
75 #endif