Fix the issues with the MPI_Op and the Fortran90 types.
This commit was SVN r27707.
Этот коммит содержится в:
родитель
6046812952
Коммит
4a581d276d
@ -188,6 +188,8 @@ ompi_datatype_duplicate( const ompi_datatype_t* oldType, ompi_datatype_t** newTy
|
||||
opal_datatype_clone( &oldType->super, &new_ompi_datatype->super);
|
||||
/* Strip the predefined flag at the OMPI level. */
|
||||
new_ompi_datatype->super.flags &= ~OMPI_DATATYPE_FLAG_PREDEFINED;
|
||||
/* By default maintain the relationships related to the old data (such as ops) */
|
||||
new_ompi_datatype->id = oldType->id;
|
||||
|
||||
/* Set the keyhash to NULL -- copying attributes is *only* done at
|
||||
the top level (specifically, MPI_TYPE_DUP). */
|
||||
|
@ -97,7 +97,10 @@ int MPI_Type_create_f90_complex(int p, int r, MPI_Datatype *newtype)
|
||||
/* Make sure the user is not allowed to free this datatype as specified
|
||||
* in the MPI standard.
|
||||
*/
|
||||
datatype->super.flags |= OPAL_DATATYPE_FLAG_PREDEFINED;
|
||||
datatype->super.flags |= OMPI_DATATYPE_FLAG_PREDEFINED;
|
||||
/* Mark the datatype as a special F90 convenience type */
|
||||
snprintf(datatype->name, MPI_MAX_OBJECT_NAME, "COMBINER %s",
|
||||
(*newtype)->name);
|
||||
|
||||
a_i[0] = &r;
|
||||
a_i[1] = &p;
|
||||
|
@ -97,7 +97,10 @@ int MPI_Type_create_f90_integer(int r, MPI_Datatype *newtype)
|
||||
/* Make sure the user is not allowed to free this datatype as specified
|
||||
* in the MPI standard.
|
||||
*/
|
||||
datatype->super.flags |= OPAL_DATATYPE_FLAG_PREDEFINED;
|
||||
datatype->super.flags |= OMPI_DATATYPE_FLAG_PREDEFINED;
|
||||
/* Mark the datatype as a special F90 convenience type */
|
||||
snprintf(datatype->name, MPI_MAX_OBJECT_NAME, "COMBINER %s",
|
||||
(*newtype)->name);
|
||||
|
||||
a_i[0] = &r;
|
||||
ompi_datatype_set_args( datatype, 1, a_i, 0, NULL, 0, NULL, MPI_COMBINER_F90_INTEGER );
|
||||
|
@ -98,7 +98,10 @@ int MPI_Type_create_f90_real(int p, int r, MPI_Datatype *newtype)
|
||||
/* Make sure the user is not allowed to free this datatype as specified
|
||||
* in the MPI standard.
|
||||
*/
|
||||
datatype->super.flags |= OPAL_DATATYPE_FLAG_PREDEFINED;
|
||||
datatype->super.flags |= OMPI_DATATYPE_FLAG_PREDEFINED;
|
||||
/* Mark the datatype as a special F90 convenience type */
|
||||
snprintf(datatype->name, MPI_MAX_OBJECT_NAME, "COMBINER %s",
|
||||
(*newtype)->name);
|
||||
|
||||
a_i[0] = &r;
|
||||
a_i[1] = &p;
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user