1
1

Unfortunately, I cannot remove the log from SVN to erase all trace (for the sake

of the future generations) of my own way to define function prototypes.
Shame on me ...

This commit was SVN r9327.
Этот коммит содержится в:
George Bosilca 2006-03-17 16:39:36 +00:00
родитель c2f001c0f2
Коммит 5819304916
4 изменённых файлов: 102 добавлений и 85 удалений

Просмотреть файл

@ -27,6 +27,7 @@
#include "ompi/datatype/convertor.h"
#include "ompi/datatype/datatype_internal.h"
#include "ompi/datatype/datatype_checksum.h"
#include "ompi/datatype/datatype_prototypes.h"
ompi_convertor_t* ompi_convertor_create( int32_t remote_arch, int32_t mode )
{
@ -327,32 +328,6 @@ int ompi_convertor_prepare( ompi_convertor_t* convertor,
return ompi_convertor_create_stack_at_begining( convertor, ompi_ddt_local_sizes );
}
/*
* All the conversion functions (pack and unpack) we have. For each
* function there are 2 versions: one without checksum (using memcpy)
* and one with checksum.
*/
extern convertor_advance_fct_t ompi_unpack_general;
extern convertor_advance_fct_t ompi_unpack_general_checksum;
extern convertor_advance_fct_t ompi_unpack_homogeneous;
extern convertor_advance_fct_t ompi_unpack_homogeneous_checksum;
extern convertor_advance_fct_t ompi_generic_simple_unpack;
extern convertor_advance_fct_t ompi_generic_simple_unpack_checksum;
extern convertor_advance_fct_t ompi_unpack_homogeneous_contig;
extern convertor_advance_fct_t ompi_unpack_homogeneous_contig_checksum;
extern convertor_advance_fct_t ompi_pack_general;
extern convertor_advance_fct_t ompi_pack_general_checksum;
extern convertor_advance_fct_t ompi_pack_homogeneous_with_memcpy;
extern convertor_advance_fct_t ompi_pack_homogeneous_with_memcpy_checksum;
extern convertor_advance_fct_t ompi_pack_no_conversion;
extern convertor_advance_fct_t ompi_pack_no_conversion_checksum;
extern convertor_advance_fct_t ompi_generic_simple_pack;
extern convertor_advance_fct_t ompi_generic_simple_pack_checksum;
extern convertor_advance_fct_t ompi_pack_no_conv_contig;
extern convertor_advance_fct_t ompi_pack_no_conv_contig_checksum;
extern convertor_advance_fct_t ompi_pack_no_conv_contig_with_gaps;
extern convertor_advance_fct_t ompi_pack_no_conv_contig_with_gaps_checksum;
int32_t
ompi_convertor_prepare_for_recv( ompi_convertor_t* convertor,
const struct ompi_datatype_t* datatype,

Просмотреть файл

@ -31,6 +31,7 @@ extern int ompi_pack_debug;
#include "ompi/datatype/datatype_checksum.h"
#include "ompi/datatype/datatype_pack.h"
#include "ompi/datatype/datatype_prototypes.h"
#if defined(CHECKSUM)
#define ompi_pack_general_function ompi_pack_general_checksum
@ -49,41 +50,6 @@ extern int ompi_pack_debug;
#endif /* defined(CHECKSUM) */
int32_t
ompi_pack_general_function( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data,
int32_t* freeAfter );
int32_t
ompi_pack_homogeneous_with_memcpy_function( ompi_convertor_t* pConv,
struct iovec* iov,
uint32_t* out_size,
size_t* max_data,
int* freeAfter );
int32_t
ompi_pack_no_conversion_function( ompi_convertor_t* pConv,
struct iovec* iov,
uint32_t *out_size,
size_t* max_data,
int* freeAfter );
int32_t
ompi_pack_no_conv_contig_function( ompi_convertor_t* pConv,
struct iovec* iov,
uint32_t* out_size,
size_t* max_data,
int* freeAfter );
int32_t
ompi_pack_no_conv_contig_with_gaps_function( ompi_convertor_t* pConv,
struct iovec* iov,
uint32_t* out_size,
size_t* max_data,
int* freeAfter );
int32_t
ompi_generic_simple_pack_function( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data,
int32_t* freeAfter );
int32_t
ompi_pack_general_function( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,

99
ompi/datatype/datatype_prototypes.h Обычный файл
Просмотреть файл

@ -0,0 +1,99 @@
/* -*- Mode: C; c-basic-offset:4 ; -*- */
/*
* Copyright (c) 2004-2006 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#ifndef DATATYPE_PROTOTYPES_H_HAS_BEEN_INCLUDED
#define DATATYPE_PROTOTYPES_H_HAS_BEEN_INCLUDED
#include "ompi_config.h"
OMPI_DECLSPEC int32_t
ompi_pack_general( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_pack_general_checksum( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_pack_homogeneous_with_memcpy( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_pack_homogeneous_with_memcpy_checksum( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
int32_t
ompi_pack_no_conversion( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t *out_size,
size_t* max_data, int32_t* freeAfter );
int32_t
ompi_pack_no_conversion_checksum( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t *out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_pack_no_conv_contig( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_pack_no_conv_contig_checksum( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_pack_no_conv_contig_with_gaps( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_pack_no_conv_contig_with_gaps_checksum( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_generic_simple_pack( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_generic_simple_pack_checksum( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_unpack_general( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_unpack_general_checksum( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_unpack_homogeneous( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_unpack_homogeneous_checksum( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_unpack_homogeneous_contig( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_unpack_homogeneous_contig_checksum( ompi_convertor_t* pConv,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_generic_simple_unpack( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
OMPI_DECLSPEC int32_t
ompi_generic_simple_unpack_checksum( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data, int32_t* freeAfter );
#endif /* DATATYPE_PROTOTYPES_H_HAS_BEEN_INCLUDED */

Просмотреть файл

@ -31,6 +31,7 @@ extern int ompi_unpack_debug;
#include "ompi/datatype/datatype_checksum.h"
#include "ompi/datatype/datatype_unpack.h"
#include "ompi/datatype/datatype_prototypes.h"
#if defined(CHECKSUM)
#define ompi_unpack_general_function ompi_unpack_general_checksum
@ -44,30 +45,6 @@ extern int ompi_unpack_debug;
#define ompi_generic_simple_unpack_function ompi_generic_simple_unpack
#endif /* defined(CHECKSUM) */
int32_t
ompi_unpack_general_function( ompi_convertor_t* pConvertor,
struct iovec* iov,
uint32_t* out_size,
size_t* max_data,
int32_t* freeAfter );
int32_t
ompi_unpack_homogeneous_function( ompi_convertor_t* pConv,
struct iovec* iov,
uint32_t* out_size,
size_t* max_data,
int32_t* freeAfter );
int32_t
ompi_unpack_homogeneous_contig_function( ompi_convertor_t* pConv,
struct iovec* iov,
uint32_t* out_size,
size_t* max_data,
int32_t* freeAfter );
int32_t
ompi_generic_simple_unpack_function( ompi_convertor_t* pConvertor,
struct iovec* iov, uint32_t* out_size,
size_t* max_data,
int32_t* freeAfter );
/*
* Remember that the first item in the stack (ie. position 0) is the number
* of times the datatype is involved in the operation (ie. the count argument