diff options
-rw-r--r-- | src/slab.c | 20 |
1 files changed, 20 insertions, 0 deletions
@@ -192,6 +192,8 @@ typedef enum { CACTUS_MPI_COMPLEX32 = CCTK_VARIABLE_COMPLEX32 } MPI_Datatype; +static MPI_Datatype MPI_INT; + typedef enum { MPI_MIN, MPI_MAX } MPI_Op; static int @@ -330,6 +332,24 @@ Slab_InitMPIDatatypes (void) MPI_Type_commit (&CACTUS_MPI_COMPLEX32); # endif #endif + +#ifndef CCTK_MPI + switch (sizeof(int)) { +#ifdef CCTK_INT1 + case sizeof(CCTK_INT1): MPI_INT = CCTK_VARIABLE_INT1; break; +#endif +#ifdef CCTK_INT2 + case sizeof(CCTK_INT2): MPI_INT = CCTK_VARIABLE_INT2; break; +#endif +#ifdef CCTK_INT4 + case sizeof(CCTK_INT4): MPI_INT = CCTK_VARIABLE_INT4; break; +#endif +#ifdef CCTK_INT8 + case sizeof(CCTK_INT8): MPI_INT = CCTK_VARIABLE_INT8; break; +#endif + default: assert(0); + } +#endif } |