-: 0:Source:/home/MPI/testing/mpich2/mpich2/src/mpid/common/datatype/mpid_ext32_datatype.c
-: 0:Graph:mpid_ext32_datatype.gcno
-: 0:Data:mpid_ext32_datatype.gcda
-: 0:Runs:510
-: 0:Programs:137
-: 1:/* -*- Mode: C; c-basic-offset:4 ; -*- */
-: 2:
-: 3:/*
-: 4: * (C) 2001 by Argonne National Laboratory.
-: 5: * See COPYRIGHT in top-level directory.
-: 6: */
-: 7:
-: 8:#include <stdio.h>
-: 9:#include <stdlib.h>
-: 10:
-: 11:#include <mpichconf.h>
-: 12:#include <mpiimpl.h>
-: 13:#include <mpid_dataloop.h>
-: 14:
-: 15:
-: 16:typedef struct external32_basic_size
-: 17:{
-: 18: MPI_Datatype el_type;
-: 19: MPI_Aint el_size;
-: 20:} external32_basic_size_t;
-: 21:
-: 22:static external32_basic_size_t external32_basic_size_array[] =
-: 23:{
-: 24: { MPI_PACKED, 1 },
-: 25: { MPI_BYTE, 1 },
-: 26: { MPI_CHAR, 1 },
-: 27: { MPI_UNSIGNED_CHAR, 1 },
-: 28: { MPI_SHORT, 2 },
-: 29: { MPI_UNSIGNED_SHORT, 2 },
-: 30: { MPI_INT, 4 },
-: 31: { MPI_UNSIGNED, 4 },
-: 32: { MPI_LONG, 4 },
-: 33: { MPI_UNSIGNED_LONG, 4 },
-: 34: { MPI_FLOAT, 4 },
-: 35: { MPI_DOUBLE, 8 },
-: 36: { MPI_LONG_DOUBLE, 16 },
-: 37: { MPI_CHARACTER, 1 },
-: 38: { MPI_INT8_T, 1 },
-: 39: { MPI_INT16_T, 2 },
-: 40: { MPI_INT32_T, 4 },
-: 41: { MPI_INT64_T, 8 },
-: 42: { MPI_UINT8_T, 1 },
-: 43: { MPI_UINT16_T, 2 },
-: 44: { MPI_UINT32_T, 4 },
-: 45: { MPI_UINT64_T, 8 },
-: 46: { MPI_C_BOOL, 4 },
-: 47: { MPI_C_FLOAT_COMPLEX, 2*4 },
-: 48: { MPI_C_DOUBLE_COMPLEX, 2*8 },
-: 49: { MPI_C_LONG_DOUBLE_COMPLEX, 2*16 },
-: 50: { MPI_LOGICAL, 4 },
-: 51: { MPI_INTEGER, 4 },
-: 52: { MPI_REAL, 4 },
-: 53: { MPI_DOUBLE_PRECISION, 8 },
-: 54: { MPI_COMPLEX, 8 },
-: 55: { MPI_DOUBLE_COMPLEX, 16 },
-: 56:#ifdef HAVE_FORTRAN_BINDING
-: 57: { MPI_SIGNED_CHAR, 1 },
-: 58: { MPI_WCHAR, 2 },
-: 59: { MPI_INTEGER1, 1 },
-: 60: { MPI_INTEGER2, 2 },
-: 61: { MPI_INTEGER4, 4 },
-: 62: { MPI_INTEGER8, 8 },
-: 63: { MPI_UNSIGNED_LONG_LONG, 8 },
-: 64: { MPI_REAL4, 4 },
-: 65: { MPI_REAL8, 8 },
-: 66: { MPI_REAL16, 16 },
-: 67:#endif
-: 68: { MPI_LONG_LONG, 8 }
-: 69:};
-: 70:
-: 71:MPI_Aint MPIDI_Datatype_get_basic_size_external32(MPI_Datatype el_type)
25: 72:{
25: 73: MPI_Aint ret = (MPI_Aint) 0;
25: 74: unsigned int i = 0;
721: 75: for(i = 0; i < (sizeof(external32_basic_size_array) /
671: 76: sizeof(external32_basic_size_t)); i++)
-: 77: {
696: 78: if (external32_basic_size_array[i].el_type == el_type)
-: 79: {
25: 80: ret = external32_basic_size_array[i].el_size;
25: 81: break;
-: 82: }
-: 83: }
25: 84: return ret;
-: 85:}
-: 86:
-: 87:MPI_Aint MPID_Datatype_size_external32(MPI_Datatype type)
9: 88:{
9: 89: if (HANDLE_GET_KIND(type) == HANDLE_KIND_BUILTIN) {
9: 90: return MPIDI_Datatype_get_basic_size_external32(type);
-: 91: }
-: 92: else {
|