1
1
openmpi/ompi/mca/osc/base
Mark Allen e24d5ccb7e single_predefined_type with MPI_LB/UB
The ompi_datatype_get_single_predefined_type_from_args() recurses down
into a constructed type to identify what base datatype it's built from
if it's built from a single type.  But if the type has MPI_LB/MPI_UB,
for example
    lens[0] = 1;
    lens[1] = 1;
    disps[0] = 0;
    disps[1] = 0;
    types[0] = MPI_LB;
    types[1] = MPI_INT;
    MPI_Type_create_struct(2, lens, disps, types, &mydt);
then this function will see the base type MPI_LB as differing from MPI_INT
and will identify mydt as not being constructed from a single base type, so
the type will be rejected for calls like MPI_Accumulate.

I think those "meta data" types shouldn't result in rejection like that, and
the above mydt should still be identified as having a single base type
of MPI_INT.

Addition: boslica wanted another change discussed here
    https://github.com/open-mpi/ompi/pull/3609
relating to the calculation for "count" after identifying the
predefined_type that was being used.

Signed-off-by: Mark Allen <markalle@us.ibm.com>
2017-10-03 19:08:18 -04:00
..
base.h fixes for Dave's get/set info code 2017-05-17 01:12:49 -04:00
Makefile.am Revert "Update to sync with OMPI master and cleanup to build" 2016-11-22 15:03:20 -08:00
osc_base_frame.c Revert "Update to sync with OMPI master and cleanup to build" 2016-11-22 15:03:20 -08:00
osc_base_init.c fixes for Dave's get/set info code 2017-05-17 01:12:49 -04:00
osc_base_obj_convert.c single_predefined_type with MPI_LB/UB 2017-10-03 19:08:18 -04:00
osc_base_obj_convert.h Don't refcount the predefined datatypes. 2017-01-11 16:48:59 -05:00
owner.txt Revert "Update to sync with OMPI master and cleanup to build" 2016-11-22 15:03:20 -08:00