Skip to content

Commit 47273fb

Browse files
committed
Add the missing MPI 4.0 types and their external32 size.
Signed-off-by: George Bosilca <[email protected]>
1 parent 73d64cb commit 47273fb

File tree

1 file changed

+66
-31
lines changed

1 file changed

+66
-31
lines changed

ompi/datatype/ompi_datatype_external32.c

Lines changed: 66 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -26,39 +26,74 @@
2626

2727
/* From the MPI standard. external32 use the following types:
2828
* Type Length
29-
* MPI_PACKED 1
30-
* MPI_BYTE 1
31-
* MPI_CHAR 1
32-
* MPI_UNSIGNED_CHAR 1
33-
* MPI_SIGNED_CHAR 1
34-
* MPI_WCHAR 2
35-
* MPI_SHORT 2
36-
* MPI_UNSIGNED_SHORT 2
37-
* MPI_INT 4
38-
* MPI_UNSIGNED 4
39-
* MPI_LONG 4
40-
* MPI_UNSIGNED_LONG 4
41-
* MPI_FLOAT 4
42-
* MPI_DOUBLE 8
43-
* MPI_LONG_DOUBLE 16
29+
* MPI_PACKED 1
30+
* MPI_BYTE 1
31+
* MPI_CHAR 1
32+
* MPI_UNSIGNED_CHAR 1
33+
* MPI_SIGNED_CHAR 1
34+
* MPI_WCHAR 2
35+
* MPI_SHORT 2
36+
* MPI_UNSIGNED_SHORT 2
37+
* MPI_INT 4
38+
* MPI_LONG 4
39+
* MPI_UNSIGNED 4
40+
* MPI_UNSIGNED_LONG 4
41+
* MPI_LONG_LONG_INT 8
42+
* MPI_UNSIGNED_LONG_LONG 8
43+
* MPI_FLOAT 4
44+
* MPI_DOUBLE 8
45+
* MPI_LONG_DOUBLE 16
46+
*
47+
* MPI_C_BOOL 1
48+
* MPI_INT8_T 1
49+
* MPI_INT16_T 2
50+
* MPI_INT32_T 4
51+
* MPI_INT64_T 8
52+
* MPI_UINT8_T 1
53+
* MPI_UINT16_T 2
54+
* MPI_UINT32_T 4
55+
* MPI_UINT64_T 8
56+
* MPI_AINT 8
57+
* MPI_COUNT 8
58+
* MPI_OFFSET 8
59+
* MPI_C_COMPLEX 2*4
60+
* MPI_C_FLOAT_COMPLEX 2*4
61+
* MPI_C_DOUBLE_COMPLEX 2*8
62+
* MPI_C_LONG_DOUBLE_COMPLEX 2*16
63+
*
4464
* Fortran types
45-
* MPI_CHARACTER 1
46-
* MPI_LOGICAL 4
47-
* MPI_INTEGER 4
48-
* MPI_REAL 4
49-
* MPI_DOUBLE_PRECISION 8
50-
* MPI_COMPLEX 2*4
51-
* MPI_DOUBLE_COMPLEX 2*8
65+
* MPI_CHARACTER 1
66+
* MPI_LOGICAL 4
67+
* MPI_INTEGER 4
68+
* MPI_REAL 4
69+
* MPI_DOUBLE_PRECISION 8
70+
* MPI_COMPLEX 2*4
71+
* MPI_DOUBLE_COMPLEX 2*8
72+
*
73+
* MPI_CXX_BOOL 1
74+
* MPI_CXX_FLOAT_COMPLEX 2*4
75+
* MPI_CXX_DOUBLE_COMPLEX 2*8
76+
* MPI_CXX_LONG_DOUBLE_COMPLEX 2*16
77+
*
5278
* Optional types
53-
* MPI_INTEGER1 1
54-
* MPI_INTEGER2 2
55-
* MPI_INTEGER4 4
56-
* MPI_INTEGER8 8
57-
* MPI_LONG_LONG_INT 8
58-
* MPI_UNSIGNED_LONG_LONG 8
59-
* MPI_REAL4 4
60-
* MPI_REAL8 8
61-
* MPI_REAL16 16
79+
* MPI_INTEGER1 1
80+
* MPI_INTEGER2 2
81+
* MPI_INTEGER4 4
82+
* MPI_INTEGER8 8
83+
* MPI_INTEGER16 16
84+
* MPI_REAL2 2
85+
* MPI_REAL4 4
86+
* MPI_REAL8 8
87+
* MPI_REAL16 16
88+
* MPI_COMPLEX4 2*2
89+
* MPI_COMPLEX8 2*4
90+
* MPI_COMPLEX16 2*8
91+
* MPI_COMPLEX32 2*16
92+
*
93+
* MPI_CXX_BOOL 1
94+
* MPI_CXX_FLOAT_COMPLEX 2*4
95+
* MPI_CXX_DOUBLE_COMPLEX 2*8
96+
* MPI_CXX_LONG_DOUBLE_COMPLEX 2*16
6297
*
6398
* All floating point values are in big-endian IEEE format. Double extended use 16 bytes, with
6499
* 15 exponent bits (bias = 10383), 112 mantissa bits and the same encoding as double. All

0 commit comments

Comments
 (0)