85 #ifdef AMPI_FORTRANCOMPATIBLE
327 if (datatype==MPI_DOUBLE)
329 else if (datatype==MPI_FLOAT)
334 MPI_Abort(comm, MPI_ERR_TYPE);
335 return (
void*)malloc(adjointCount*s);
346 if (datatype==MPI_DOUBLE)
347 ptr = malloc(count*
sizeof(MPI_DOUBLE));
348 else if (datatype==MPI_FLOAT)
349 ptr = malloc(count*
sizeof(MPI_FLOAT));
370 void *source,
void *adjointSource,
371 void* target,
void* adjointTarget) {
376 void *source,
void *adjointSource,
377 void* target,
void* adjointTarget) {
382 void *source,
void *adjointSource,
383 void* target,
void* adjointTarget) {
406 printf(
"Please provide implementation of ADTOOL_AMPI_pushBuffer()\n") ;
414 printf(
"Please provide implementation of ADTOOL_AMPI_popBuffer()\n") ;
436 #ifdef AMPI_FORTRANCOMPATIBLE
437 void adtool_ampi_fortransetuptypes_(MPI_Fint* adouble,MPI_Fint* areal) {
442 #ifdef AMPI_FORTRANCOMPATIBLE
449 #ifdef AMPI_FORTRANCOMPATIBLE
450 adtool_ampi_fortransetuptypes_(&adouble, &areal);
456 #ifdef AMPI_FORTRANCOMPATIBLE
457 void adtool_ampi_fortrancleanuptypes_(MPI_Fint* adouble,MPI_Fint* areal) {