Skip to content

Commit 45fb0c1

Browse files
authored
Merge pull request #6358 from gpaulsen/topic/master/mpi1removal
Fix MPI1 function removal [master] Issue 6114 [API Change]
2 parents ccb59eb + a6d6be2 commit 45fb0c1

23 files changed

+13
-806
lines changed

config/ompi_config_files.m4

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ AC_DEFUN([OMPI_CONFIG_FILES],[
3636
ompi/mpi/fortran/use-mpi-ignore-tkr/Makefile
3737
ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr-interfaces.h
3838
ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr-file-interfaces.h
39-
ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr-removed-interfaces.h
4039
ompi/mpi/fortran/use-mpi-f08/Makefile
4140
ompi/mpi/fortran/use-mpi-f08/bindings/Makefile
4241
ompi/mpi/fortran/use-mpi-f08/mod/Makefile

ompi/datatype/ompi_datatype_args.c

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -841,25 +841,19 @@ ompi_datatype_t* ompi_datatype_get_single_predefined_type_from_args( ompi_dataty
841841
return NULL;
842842
}
843843
}
844-
#if OMPI_ENABLE_MPI1_COMPAT
845-
if (current_predef != MPI_LB && current_predef != MPI_UB) {
846-
#endif
847-
if( NULL == predef ) { /* This is the first iteration */
848-
predef = current_predef;
849-
} else {
850-
/**
851-
* What exactly should we consider as identical types?
852-
* If they are the same MPI level type, or if they map
853-
* to the same OPAL datatype? In other words, MPI_FLOAT
854-
* and MPI_REAL4 are they identical?
855-
*/
856-
if( predef != current_predef ) {
857-
return NULL;
858-
}
844+
if( NULL == predef ) { /* This is the first iteration */
845+
predef = current_predef;
846+
} else {
847+
/**
848+
* What exactly should we consider as identical types?
849+
* If they are the same MPI level type, or if they map
850+
* to the same OPAL datatype? In other words, MPI_FLOAT
851+
* and MPI_REAL4 are they identical?
852+
*/
853+
if( predef != current_predef ) {
854+
return NULL;
859855
}
860-
#if OMPI_ENABLE_MPI1_COMPAT
861856
}
862-
#endif
863857
}
864858
return predef;
865859
}

ompi/include/mpi.h.in

Lines changed: 1 addition & 112 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
* Copyright (c) 2015 University of Houston. All rights reserved.
2020
* Copyright (c) 2015-2018 Research Organization for Information Science
2121
* and Technology (RIST). All rights reserved.
22-
* Copyright (c) 2017-2018 IBM Corporation. All rights reserved.
22+
* Copyright (c) 2017-2019 IBM Corporation. All rights reserved.
2323
* Copyright (c) 2018 FUJITSU LIMITED. All rights reserved.
2424
* $COPYRIGHT$
2525
*
@@ -137,9 +137,6 @@
137137
/* Whether we have FORTRAN REAL*8 or not */
138138
#undef OMPI_HAVE_FORTRAN_REAL8
139139

140-
/* Whether in include MPI-1 compatibility */
141-
#undef OMPI_ENABLE_MPI1_COMPAT
142-
143140
/* Whether we have float _Complex or not */
144141
#undef HAVE_FLOAT__COMPLEX
145142

@@ -280,10 +277,6 @@
280277
# define __mpi_interface_deprecated__(msg) __attribute__((__deprecated__))
281278
# endif
282279
# endif
283-
# if OMPI_ENABLE_MPI1_COMPAT
284-
# define __mpi_interface_removed__(msg) __mpi_interface_deprecated__(msg)
285-
# define OMPI_OMIT_MPI1_COMPAT_DECLS 0
286-
# endif
287280
# endif
288281
# endif
289282
#endif
@@ -297,14 +290,6 @@
297290
# define __mpi_interface_deprecated__(msg)
298291
#endif
299292

300-
#if !defined(__mpi_interface_removed__)
301-
# define __mpi_interface_removed__(msg)
302-
#endif
303-
304-
#if !defined(OMPI_OMIT_MPI1_COMPAT_DECLS)
305-
# define OMPI_OMIT_MPI1_COMPAT_DECLS !OMPI_ENABLE_MPI1_COMPAT
306-
#endif
307-
308293
/*
309294
* To accomodate programs written for MPI implementations that use a
310295
* straight ROMIO import
@@ -1005,23 +990,6 @@ OMPI_DECLSPEC extern struct ompi_predefined_info_t ompi_mpi_info_env;
1005990
OMPI_DECLSPEC extern MPI_Fint *MPI_F_STATUS_IGNORE;
1006991
OMPI_DECLSPEC extern MPI_Fint *MPI_F_STATUSES_IGNORE;
1007992

1008-
#if !OMPI_OMIT_MPI1_COMPAT_DECLS
1009-
/*
1010-
* Removed datatypes. These datatypes are only available if Open MPI
1011-
* was configured with --enable-mpi1-compatibility.
1012-
*
1013-
* These datatypes were formally removed from the MPI specification
1014-
* and should no longer be used in MPI applications.
1015-
*/
1016-
#define MPI_UB OMPI_PREDEFINED_GLOBAL(MPI_Datatype, ompi_mpi_ub)
1017-
#define MPI_LB OMPI_PREDEFINED_GLOBAL(MPI_Datatype, ompi_mpi_lb)
1018-
1019-
OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_lb
1020-
__mpi_interface_removed__("MPI_LB was removed in MPI-3.0; use MPI_Type_create_resized instead.");
1021-
OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_ub
1022-
__mpi_interface_removed__("MPI_UB was removed in MPI-3.0; use MPI_Type_create_resized instead.");
1023-
#endif /* !OMPI_OMIT_MPI1_COMPAT_DECLS */
1024-
1025993
/*
1026994
* MPI predefined handles
1027995
*/
@@ -2672,85 +2640,6 @@ OMPI_DECLSPEC int OMPI_C_MPI_NULL_DELETE_FN( MPI_Comm comm, int comm_keyval,
26722640
void* extra_state )
26732641
__mpi_interface_deprecated__("MPI_NULL_DELETE_FN was deprecated in MPI-2.0; use MPI_COMM_NULL_DELETE_FN instead.");
26742642

2675-
#if !OMPI_OMIT_MPI1_COMPAT_DECLS
2676-
/*
2677-
* Removed typedefs. These typedefs are only available if Open MPI
2678-
* was configured with --enable-mpi1-compatibility.
2679-
*
2680-
* These typedefs were formally removed from the MPI specification
2681-
* and should no longer be used in MPI applications.
2682-
*
2683-
* Even though MPI_Handler_function is removed, we do not use the
2684-
* attributes marking it as such, because otherwise the compiler
2685-
* will warn for all the functions that are declared using them
2686-
* (e.g., MPI_Errhandler_create).
2687-
*/
2688-
typedef void (MPI_Handler_function)(MPI_Comm *, int *, ...);
2689-
/* MPI_Handler_function was removed in MPI-3.0; use MPI_Comm_use_errhandler_function instead. */
2690-
2691-
/*
2692-
* Removed prototypes. These prototypes are only available if Open
2693-
* MPI was configured with --enable-mpi1-compatibility.
2694-
*
2695-
* These functions were formally removed from the MPI specification
2696-
* and should no longer be used in MPI applications.
2697-
*/
2698-
OMPI_DECLSPEC int MPI_Address(void *location, MPI_Aint *address)
2699-
__mpi_interface_removed__("MPI_Address was removed in MPI-3.0; use MPI_Get_address instead.");
2700-
OMPI_DECLSPEC int PMPI_Address(void *location, MPI_Aint *address)
2701-
__mpi_interface_removed__("PMPI_Address was removed in MPI-3.0; use MPI_Get_address instead.");
2702-
OMPI_DECLSPEC int MPI_Errhandler_create(MPI_Handler_function *function,
2703-
MPI_Errhandler *errhandler)
2704-
__mpi_interface_removed__("MPI_Errhandler_create was removed in MPI-3.0; use MPI_Comm_create_errhandler instead.");
2705-
OMPI_DECLSPEC int PMPI_Errhandler_create(MPI_Handler_function *function,
2706-
MPI_Errhandler *errhandler)
2707-
__mpi_interface_removed__("PMPI_Errhandler_create was removed in MPI-3.0; use PMPI_Comm_create_errhandler instead.");
2708-
OMPI_DECLSPEC int MPI_Errhandler_get(MPI_Comm comm, MPI_Errhandler *errhandler)
2709-
__mpi_interface_removed__("MPI_Errhandler_get was removed in MPI-3.0; use MPI_Comm_get_errhandler instead.");
2710-
OMPI_DECLSPEC int PMPI_Errhandler_get(MPI_Comm comm, MPI_Errhandler *errhandler)
2711-
__mpi_interface_removed__("PMPI_Errhandler_get was removed in MPI-3.0; use PMPI_Comm_get_errhandler instead.");
2712-
OMPI_DECLSPEC int MPI_Errhandler_set(MPI_Comm comm, MPI_Errhandler errhandler)
2713-
__mpi_interface_removed__("MPI_Errhandler_set was removed in MPI-3.0; use MPI_Comm_set_errhandler instead.");
2714-
OMPI_DECLSPEC int PMPI_Errhandler_set(MPI_Comm comm, MPI_Errhandler errhandler)
2715-
__mpi_interface_removed__("PMPI_Errhandler_set was removed in MPI-3.0; use PMPI_Comm_set_errhandler instead.");
2716-
OMPI_DECLSPEC int MPI_Type_extent(MPI_Datatype type, MPI_Aint *extent)
2717-
__mpi_interface_removed__("MPI_Type_extent was removed in MPI-3.0; use MPI_Type_get_extent instead.");
2718-
OMPI_DECLSPEC int PMPI_Type_extent(MPI_Datatype type, MPI_Aint *extent)
2719-
__mpi_interface_removed__("PMPI_Type_extent was removed in MPI-3.0; use PMPI_Type_get_extent instead.");
2720-
OMPI_DECLSPEC int MPI_Type_hindexed(int count, int array_of_blocklengths[],
2721-
MPI_Aint array_of_displacements[],
2722-
MPI_Datatype oldtype, MPI_Datatype *newtype)
2723-
__mpi_interface_removed__("MPI_Type_hindexed was removed in MPI-3.0; use MPI_Type_create_hindexed instead.");
2724-
OMPI_DECLSPEC int PMPI_Type_hindexed(int count, int array_of_blocklengths[],
2725-
MPI_Aint array_of_displacements[],
2726-
MPI_Datatype oldtype, MPI_Datatype *newtype)
2727-
__mpi_interface_removed__("PMPI_Type_hindexed was removed in MPI-3.0; use PMPI_Type_create_hindexed instead.");
2728-
OMPI_DECLSPEC int MPI_Type_hvector(int count, int blocklength, MPI_Aint stride,
2729-
MPI_Datatype oldtype, MPI_Datatype *newtype)
2730-
__mpi_interface_removed__("MPI_Type_hvector was removed in MPI-3.0; use MPI_Type_create_hvector instead.");
2731-
OMPI_DECLSPEC int PMPI_Type_hvector(int count, int blocklength, MPI_Aint stride,
2732-
MPI_Datatype oldtype, MPI_Datatype *newtype)
2733-
__mpi_interface_removed__("PMPI_Type_hvector was removed in MPI-3.0; use PMPI_Type_create_hvector instead.");
2734-
OMPI_DECLSPEC int MPI_Type_lb(MPI_Datatype type, MPI_Aint *lb)
2735-
__mpi_interface_removed__("MPI_Type_lb has been removed in MPI-3.0; use MPI_Type_get_extent instead.");
2736-
OMPI_DECLSPEC int PMPI_Type_lb(MPI_Datatype type, MPI_Aint *lb)
2737-
__mpi_interface_removed__("PMPI_Type_lb has been removed in MPI-3.0; use PMPI_Type_get_extent instead.");
2738-
OMPI_DECLSPEC int MPI_Type_struct(int count, int array_of_blocklengths[],
2739-
MPI_Aint array_of_displacements[],
2740-
MPI_Datatype array_of_types[],
2741-
MPI_Datatype *newtype)
2742-
__mpi_interface_removed__("MPI_Type_struct was removed in MPI-3.0; use MPI_Type_create_struct instead.");
2743-
OMPI_DECLSPEC int PMPI_Type_struct(int count, int array_of_blocklengths[],
2744-
MPI_Aint array_of_displacements[],
2745-
MPI_Datatype array_of_types[],
2746-
MPI_Datatype *newtype)
2747-
__mpi_interface_removed__("PMPI_Type_struct was removed in MPI-3.0; use PMPI_Type_create_struct instead.");
2748-
OMPI_DECLSPEC int MPI_Type_ub(MPI_Datatype mtype, MPI_Aint *ub)
2749-
__mpi_interface_removed__("MPI_Type_ub has been removed in MPI-3.0; use MPI_Type_get_extent instead.");
2750-
OMPI_DECLSPEC int PMPI_Type_ub(MPI_Datatype mtype, MPI_Aint *ub)
2751-
__mpi_interface_removed__("PMPI_Type_ub has been removed in MPI-3.0; use PMPI_Type_get_extent instead.");
2752-
#endif /* !OMPI_OMIT_MPI1_COMPAT_DECLS */
2753-
27542643
#if defined(c_plusplus) || defined(__cplusplus)
27552644
}
27562645
#endif

ompi/mpi/c/Makefile.am

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -437,20 +437,6 @@ libmpi_c_mpi_la_SOURCES = \
437437
win_wait.c
438438

439439

440-
if OMPI_ENABLE_MPI1_COMPAT
441-
libmpi_c_mpi_la_SOURCES += \
442-
address.c \
443-
errhandler_create.c \
444-
errhandler_get.c \
445-
errhandler_set.c \
446-
type_extent.c \
447-
type_hindexed.c \
448-
type_hvector.c \
449-
type_lb.c \
450-
type_struct.c \
451-
type_ub.c
452-
endif
453-
454440
# Conditionally install the header files
455441

456442
if WANT_INSTALL_HEADERS

ompi/mpi/c/address.c

Lines changed: 0 additions & 53 deletions
This file was deleted.

ompi/mpi/c/errhandler_create.c

Lines changed: 0 additions & 42 deletions
This file was deleted.

ompi/mpi/c/errhandler_get.c

Lines changed: 0 additions & 55 deletions
This file was deleted.

0 commit comments

Comments
 (0)