isl_tab_basic_map_partial_lexopt: add memory management annotations
[isl.git] / isl_options_private.h
blob400ba0b1979602de37fa6a87338b313039096f4d
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;
38 int schedule_max_coefficient;
39 int schedule_max_constant_term;
40 int schedule_parametric;
41 int schedule_outer_coincidence;
42 int schedule_maximize_band_depth;
43 int schedule_maximize_coincidence;
44 int schedule_split_scaled;
45 int schedule_treat_coalescing;
46 int schedule_separate_components;
47 int schedule_whole_component;
48 unsigned schedule_algorithm;
49 int schedule_serialize_sccs;
51 int tile_scale_tile_loops;
52 int tile_shift_point_loops;
54 char *ast_iterator_type;
55 int ast_always_print_block;
56 int ast_print_macro_once;
58 int ast_build_atomic_upper_bound;
59 int ast_build_prefer_pdiv;
60 int ast_build_detect_min_max;
61 int ast_build_exploit_nested_bounds;
62 int ast_build_group_coscheduled;
63 int ast_build_separation_bounds;
64 int ast_build_scale_strides;
65 int ast_build_allow_else;
66 int ast_build_allow_or;
68 int print_stats;
69 unsigned long max_operations;
72 #endif