Declare and initialize the 2 predefined convertors.
This commit was SVN r6378.
Этот коммит содержится в:
родитель
d796186911
Коммит
d0df88316e
@ -214,7 +214,8 @@ typedef struct {
|
||||
extern const ompi_datatype_t* ompi_ddt_basicDatatypes[];
|
||||
#define BASIC_DDT_FROM_ELEM( ELEM ) (ompi_ddt_basicDatatypes[(ELEM).elem.common.type])
|
||||
|
||||
extern int32_t ompi_ddt_external32_init( void );
|
||||
extern int32_t ompi_ddt_default_convertors_init( void );
|
||||
extern int32_t ompi_ddt_default_convertors_fini( void );
|
||||
|
||||
#define SAVE_STACK( PSTACK, INDEX, TYPE, COUNT, DISP, END_LOOP) \
|
||||
do { \
|
||||
|
@ -71,8 +71,26 @@ uint32_t ompi_ddt_external32_arch_id = OMPI_ARCH_LDEXPSIZEIS15 | OMPI_ARCH_LDMAN
|
||||
OMPI_ARCH_HEADERMASK | OMPI_ARCH_HEADERMASK2;
|
||||
|
||||
ompi_convertor_t* ompi_mpi_external32_convertor = NULL;
|
||||
ompi_convertor_t* ompi_mpi_local_convertor = NULL;
|
||||
|
||||
int32_t ompi_ddt_external32_init( void )
|
||||
int32_t ompi_ddt_default_convertors_init( void )
|
||||
{
|
||||
uint32_t local_arch_id;
|
||||
|
||||
/* create the extern32 convertor */
|
||||
ompi_mpi_external32_convertor = ompi_convertor_create( ompi_ddt_external32_arch_id, 0 );
|
||||
|
||||
/* create the local convertor */
|
||||
ompi_arch_compute_local_id( &local_arch_id );
|
||||
ompi_mpi_local_convertor = ompi_convertor_create( local_arch_id, 0 );
|
||||
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
||||
int32_t ompi_ddt_default_convertors_fini( void )
|
||||
{
|
||||
OBJ_RELEASE( ompi_mpi_external32_convertor );
|
||||
OBJ_RELEASE( ompi_mpi_local_convertor );
|
||||
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
@ -522,7 +522,7 @@ int32_t ompi_ddt_init( void )
|
||||
}
|
||||
#endif /* VERBOSE */
|
||||
|
||||
ompi_ddt_external32_init();
|
||||
ompi_ddt_default_convertors_init();
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
||||
@ -550,6 +550,9 @@ int32_t ompi_ddt_finalize( void )
|
||||
ompi_ddt_dfd = -1;
|
||||
#endif /* VERBOSE */
|
||||
|
||||
/* release the local convertors (external32 and local) */
|
||||
ompi_ddt_default_convertors_fini();
|
||||
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user