ppcg.c: eliminate_dead_code: extract out computation of live out accesses
[ppcg.git] / ppcg_options.h
blobc72bd79311936a96fef1a590d83e5abf92d78a40
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;
41 ISL_ARG_DECL(ppcg_debug_options, struct ppcg_debug_options,
42 ppcg_debug_options_args)
43 ISL_ARG_DECL(ppcg_options, struct ppcg_options, ppcg_options_args)
45 #define PPCG_TARGET_C 0
46 #define PPCG_TARGET_CUDA 1
48 #endif