Home | History | Annotate | Download | only in isl
      1 /*
      2  * Copyright 2008-2009 Katholieke Universiteit Leuven
      3  *
      4  * Use of this software is governed by the MIT license
      5  *
      6  * Written by Sven Verdoolaege, K.U.Leuven, Departement
      7  * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
      8  */
      9 
     10 #ifndef ISL_OPTIONS_H
     11 #define ISL_OPTIONS_H
     12 
     13 #include <isl/arg.h>
     14 #include <isl/ctx.h>
     15 
     16 #if defined(__cplusplus)
     17 extern "C" {
     18 #endif
     19 
     20 struct isl_options;
     21 
     22 ISL_ARG_DECL(isl_options, struct isl_options, isl_options_args)
     23 
     24 #define			ISL_BOUND_BERNSTEIN	0
     25 #define			ISL_BOUND_RANGE		1
     26 int isl_options_set_bound(isl_ctx *ctx, int val);
     27 int isl_options_get_bound(isl_ctx *ctx);
     28 
     29 #define			ISL_ON_ERROR_WARN	0
     30 #define			ISL_ON_ERROR_CONTINUE	1
     31 #define			ISL_ON_ERROR_ABORT	2
     32 int isl_options_set_on_error(isl_ctx *ctx, int val);
     33 int isl_options_get_on_error(isl_ctx *ctx);
     34 
     35 int isl_options_set_gbr_only_first(isl_ctx *ctx, int val);
     36 int isl_options_get_gbr_only_first(isl_ctx *ctx);
     37 
     38 #define		ISL_SCHEDULE_ALGORITHM_ISL		0
     39 #define		ISL_SCHEDULE_ALGORITHM_FEAUTRIER	1
     40 int isl_options_set_schedule_algorithm(isl_ctx *ctx, int val);
     41 int isl_options_get_schedule_algorithm(isl_ctx *ctx);
     42 
     43 int isl_options_set_coalesce_bounded_wrapping(isl_ctx *ctx, int val);
     44 int isl_options_get_coalesce_bounded_wrapping(isl_ctx *ctx);
     45 
     46 #if defined(__cplusplus)
     47 }
     48 #endif
     49 
     50 #endif
     51