isl_test_cpp17-generic.cc: work around std::optional::value issue in older macOS
[isl.git] / include / isl / options.h
blob1738155fb9e409193410fa69de3a29f3c7289aa6
1 /*
2 * Copyright 2008-2009 Katholieke Universiteit Leuven
4 * Use of this software is governed by the MIT license
6 * Written by Sven Verdoolaege, K.U.Leuven, Departement
7 * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
8 */
10 #ifndef ISL_OPTIONS_H
11 #define ISL_OPTIONS_H
13 #include <isl/arg.h>
14 #include <isl/ctx.h>
16 #if defined(__cplusplus)
17 extern "C" {
18 #endif
20 struct isl_options;
22 ISL_ARG_DECL(isl_options, struct isl_options, isl_options_args)
24 #define ISL_BOUND_BERNSTEIN 0
25 #define ISL_BOUND_RANGE 1
26 isl_stat isl_options_set_bound(isl_ctx *ctx, int val);
27 int isl_options_get_bound(isl_ctx *ctx);
29 #define ISL_ON_ERROR_WARN 0
30 #define ISL_ON_ERROR_CONTINUE 1
31 #define ISL_ON_ERROR_ABORT 2
32 isl_stat isl_options_set_on_error(isl_ctx *ctx, int val);
33 int isl_options_get_on_error(isl_ctx *ctx);
35 isl_stat isl_options_set_gbr_only_first(isl_ctx *ctx, int val);
36 int isl_options_get_gbr_only_first(isl_ctx *ctx);
38 #define ISL_SCHEDULE_ALGORITHM_ISL 0
39 #define ISL_SCHEDULE_ALGORITHM_FEAUTRIER 1
40 isl_stat isl_options_set_schedule_algorithm(isl_ctx *ctx, int val);
41 int isl_options_get_schedule_algorithm(isl_ctx *ctx);
43 isl_stat isl_options_set_pip_symmetry(isl_ctx *ctx, int val);
44 int isl_options_get_pip_symmetry(isl_ctx *ctx);
46 isl_stat isl_options_set_coalesce_bounded_wrapping(isl_ctx *ctx, int val);
47 int isl_options_get_coalesce_bounded_wrapping(isl_ctx *ctx);
49 isl_stat isl_options_set_coalesce_preserve_locals(isl_ctx *ctx, int val);
50 int isl_options_get_coalesce_preserve_locals(isl_ctx *ctx);
52 #if defined(__cplusplus)
54 #endif
56 #endif