print more understandable error message in case of unbounded arrays
[ppcg.git] / ppcg_options.h
blob833a576453f238f650b4578ed52fc09aebcec60c
1 #ifndef PPCG_OPTIONS_H
2 #define PPCG_OPTIONS_H
4 #include <isl/arg.h>
6 struct ppcg_debug_options {
7 int dump_schedule_constraints;
8 int dump_schedule;
9 };
11 struct ppcg_options {
12 struct ppcg_debug_options *debug;
14 int scale_tile_loops;
15 int wrap;
17 char *ctx;
18 char *sizes;
20 int tile_size;
22 /* Take advantage of private memory. */
23 int use_private_memory;
25 /* Take advantage of shared memory. */
26 int use_shared_memory;
28 /* Maximal amount of shared memory. */
29 int max_shared_memory;
31 /* The target we generate code for. */
32 int target;
34 /* Generate OpenMP macros (C target only). */
35 int openmp;
37 /* Linearize all device arrays. */
38 int linearize_device_arrays;
40 /* Allow live range to be reordered. */
41 int live_range_reordering;
44 ISL_ARG_DECL(ppcg_debug_options, struct ppcg_debug_options,
45 ppcg_debug_options_args)
46 ISL_ARG_DECL(ppcg_options, struct ppcg_options, ppcg_options_args)
48 #define PPCG_TARGET_C 0
49 #define PPCG_TARGET_CUDA 1
51 #endif