Reduction types are now generated in a same fashion as vertexbuffer handles and others
This commit is contained in:
@@ -731,29 +731,24 @@ external acdevicesynchronizestream
|
||||
fprintf(DSLHEADER, "typedef int Stream;\n\n");
|
||||
|
||||
// Reduction types
|
||||
fprintf(DSLHEADER, "#define AC_FOR_RTYPES(FUNC)\\\n");
|
||||
fprintf(DSLHEADER, "FUNC(%s)\\\n", "RTYPE_MAX");
|
||||
fprintf(DSLHEADER, "FUNC(%s)\\\n", "RTYPE_MIN");
|
||||
fprintf(DSLHEADER, "FUNC(%s)\\\n", "RTYPE_RMS");
|
||||
fprintf(DSLHEADER, "FUNC(%s)\\\n", "RTYPE_RMS_EXP");
|
||||
fprintf(DSLHEADER, "FUNC(%s)\n", "RTYPE_SUM");
|
||||
|
||||
size_t counter = 0;
|
||||
fprintf(DSLHEADER, "#define RTYPE_MAX (%lu)\n", counter);
|
||||
fprintf(FHEADER, "integer(c_int), parameter :: RTYPE_MAX = %lu\n", counter);
|
||||
++counter;
|
||||
|
||||
fprintf(DSLHEADER, "#define RTYPE_MIN (%lu)\n", counter);
|
||||
fprintf(FHEADER, "integer(c_int), parameter :: RTYPE_MIN = %lu\n", counter);
|
||||
++counter;
|
||||
|
||||
fprintf(DSLHEADER, "#define RTYPE_RMS (%lu)\n", counter);
|
||||
fprintf(FHEADER, "integer(c_int), parameter :: RTYPE_RMS = %lu\n", counter);
|
||||
++counter;
|
||||
|
||||
fprintf(DSLHEADER, "#define RTYPE_RMS_EXP (%lu)\n", counter);
|
||||
fprintf(FHEADER, "integer(c_int), parameter :: RTYPE_RMS_EXP = %lu\n", counter);
|
||||
++counter;
|
||||
|
||||
fprintf(DSLHEADER, "#define RTYPE_SUM (%lu)\n", counter);
|
||||
fprintf(FHEADER, "integer(c_int), parameter :: RTYPE_SUM = %lu\n", counter);
|
||||
++counter;
|
||||
|
||||
fprintf(DSLHEADER, "typedef int ReductionType;\n");
|
||||
fprintf(DSLHEADER, "#define NUM_REDUCTION_TYPES (%lu)\n", counter);
|
||||
fprintf(FHEADER, "integer(c_int), parameter :: NUM_REDUCTION_TYPES = %lu\n", counter);
|
||||
|
||||
// Fortran structs
|
||||
|
@@ -50,19 +50,12 @@ typedef struct {
|
||||
|
||||
typedef enum { AC_SUCCESS = 0, AC_FAILURE = 1 } AcResult;
|
||||
|
||||
/*
|
||||
// Deprecated, defined during code generation
|
||||
typedef enum {
|
||||
RTYPE_MAX,
|
||||
RTYPE_MIN,
|
||||
RTYPE_RMS,
|
||||
RTYPE_RMS_EXP,
|
||||
RTYPE_SUM,
|
||||
NUM_REDUCTION_TYPES
|
||||
} ReductionType;
|
||||
*/
|
||||
|
||||
#define AC_GEN_ID(X) X,
|
||||
typedef enum {
|
||||
AC_FOR_RTYPES(AC_GEN_ID) //
|
||||
NUM_RTYPES
|
||||
} ReductionType;
|
||||
|
||||
typedef enum {
|
||||
AC_FOR_USER_INT_PARAM_TYPES(AC_GEN_ID) //
|
||||
NUM_INT_PARAMS
|
||||
@@ -96,6 +89,7 @@ typedef enum {
|
||||
|
||||
#define _UNUSED __attribute__((unused)) // Does not give a warning if unused
|
||||
#define AC_GEN_STR(X) #X,
|
||||
static const char* rtype_names[] _UNUSED = {AC_FOR_RTYPES(AC_GEN_STR) "-end-"};
|
||||
static const char* intparam_names[] _UNUSED = {AC_FOR_USER_INT_PARAM_TYPES(AC_GEN_STR) "-end-"};
|
||||
static const char* int3param_names[] _UNUSED = {AC_FOR_USER_INT3_PARAM_TYPES(AC_GEN_STR) "-end-"};
|
||||
static const char* realparam_names[] _UNUSED = {AC_FOR_USER_REAL_PARAM_TYPES(AC_GEN_STR) "-end-"};
|
||||
|
Reference in New Issue
Block a user