Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-17 09:55:51

0001 ! -*- fortran -*-
0002 !
0003 ! Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
0004 !                         University Research and Technology
0005 !                         Corporation.  All rights reserved.
0006 ! Copyright (c) 2004-2010 The University of Tennessee and The University
0007 !                         of Tennessee Research Foundation.  All rights
0008 !                         reserved.
0009 ! Copyright (c) 2004-2007 High Performance Computing Center Stuttgart,
0010 !                         University of Stuttgart.  All rights reserved.
0011 ! Copyright (c) 2004-2005 The Regents of the University of California.
0012 !                         All rights reserved.
0013 ! Copyright (c) 2006-2012 Cisco Systems, Inc.  All rights reserved.
0014 ! Copyright (c) 2009      Oak Ridge National Labs.  All rights reserved.
0015 ! $COPYRIGHT$
0016 !
0017 ! Additional copyrights may follow
0018 !
0019 ! $HEADER$
0020 !
0021 
0022 !
0023 !     All of these types were chosen with care to match the types of
0024 !     their corresponding C variables.  Do not arbitrarily change
0025 !     their types without also updating:
0026 !
0027 !     - the "mpi" module bindings
0028 !     - the "mpi_f08" module bindings
0029 !     - ompi/mpi/fortran/base/gen-mpi-mangling.pl
0030 !
0031 
0032 !     MPI_BOTTOM is only used where choice buffers can be used (meaning
0033 !     that we already have overloaded F90 bindings for all available
0034 !     types), so any type is fine.
0035       integer MPI_BOTTOM
0036 !     MPI_IN_PLACE has the same rationale as MPI_BOTTOM.
0037       integer MPI_IN_PLACE
0038 !     Making MPI_ARGV_NULL be the same type as the parameter that is
0039 !     expected in the F90 binding for MPI_COMM_SPAWN means that we
0040 !     don't need another interface for MPI_COMM_SPAWN.
0041       character MPI_ARGV_NULL(1)
0042 !     Ditto for MPI_ARGVS_NULL / MPI_COMM_SPAWN_MULTIPLE.
0043       character MPI_ARGVS_NULL(1, 1)
0044 !     MPI_ERRCODES_IGNORE has similar rationale to MPI_ARGV_NULL.  The
0045 !     F77 functions are all smart enough to check that the errcodes
0046 !     parameter is not ERRCODES_IGNORE before assigning values into it
0047 !     (hence, the fact that this is an array of only 1 element does not
0048 !     matter -- we'll never overrun it because we never assign values
0049 !     into it).
0050       integer MPI_ERRCODES_IGNORE(1)
0051 !     MPI_STATUS_IGNORE has similar rationale to MPI_ERRCODES_IGNORE.
0052       integer MPI_STATUS_IGNORE(MPI_STATUS_SIZE)
0053 !     Ditto for MPI_STATUSES_IGNORE
0054       integer MPI_STATUSES_IGNORE(MPI_STATUS_SIZE, 1)
0055 !     Ditto for MPI_UNWEIGHTED
0056       integer MPI_UNWEIGHTED(1)
0057 !     Ditto for MPI_WEIGHTS_EMPTY
0058       integer MPI_WEIGHTS_EMPTY(1)
0059 
0060       common/mpi_fortran_bottom/MPI_BOTTOM
0061       common/mpi_fortran_in_place/MPI_IN_PLACE
0062       common/mpi_fortran_argv_null/MPI_ARGV_NULL
0063       common/mpi_fortran_argvs_null/MPI_ARGVS_NULL
0064       common/mpi_fortran_errcodes_ignore/MPI_ERRCODES_IGNORE
0065       common/mpi_fortran_status_ignore/MPI_STATUS_IGNORE
0066       common/mpi_fortran_statuses_ignore/MPI_STATUSES_IGNORE
0067       common/mpi_fortran_unweighted/MPI_UNWEIGHTED
0068       common/mpi_fortran_weights_empty/MPI_WEIGHTS_EMPTY