1
1

172 Коммитов

Автор SHA1 Сообщение Дата
Jeff Squyres
48e9a72c47 Add the missing files -- they're svn:ignored because of all the
generated files.

This commit was SVN r10451.
2006-06-21 14:11:12 +00:00
Jeff Squyres
720f38efc5 Fix for MPI_WTICK / MPI_WTIME F90 bindings issue. The previous hope
was that declaring the type of MPI_WTICK and MPI_TIME in mpif-common.h
would allow the F90 bindings to call through to the back end f77
function and have the right return type.  But upon reflection, that's
silly -- we were just declaring the variables MPI_WTICK and MPI_WTIME
that were of type double precision.  Duh.

So add some fixed (non-generated) wrapper F90 functions to call the
back-end *C* MPI_WTICK and MPI_TIME functions (vs. the back end *F77*
functions).  We have to call the back-end C functions because there's
a name conflict if we try to call the back-end F77 functions -- for
the same reasons that we can't "implicitly" define MPI_WTIME and
MPI_WTICK in the f90 module, we can't call such an implicitly-defined
function.  So we had to add new back-end C functions that are directly
callable from Fortran, the easiest implementation of which was to
provide 4 one-line functions for each (rather than muck around with
weak symbols).

This commit was SVN r10448.
2006-06-21 13:44:20 +00:00
George Bosilca
5cfa775ef9 Pedantic ...
This commit was SVN r10365.
2006-06-15 03:22:28 +00:00
George Bosilca
7d2ce68c2a Correctly compute the boundaries for the Fortran matrix style.
This commit was SVN r10364.
2006-06-15 03:21:54 +00:00
Jeff Squyres
4d337baccf Fix for ticket ticket #119. Do not check the type of the errhandler
-- always return a value c2f translation if it's a valid errhandler.

This commit was SVN r10357.
2006-06-14 19:42:39 +00:00
George Bosilca
e8e30dcc8c And now the final correct version of the subarray function. The problem
with the last one was that the resized function only set the soft lb and ub
markers without actually moving the usefull data up to the correct
displacement. Using a struct instead solve the problem. Anyway, as defined
in the MPI standard we have to set the lower bound and the upper bound
of the new type to the correct values too.

This commit was SVN r10328.
2006-06-13 07:42:23 +00:00
George Bosilca
a3c93df20c As I'm unable to correctly compute the size in multiple of the datatype, let me do
it in the simplest way: multiple of the original datatype + the h version of the
vector function.

This commit was SVN r10313.
2006-06-12 22:08:33 +00:00
Brian Barrett
480ffd3045 Fix issue that came up with testing some LANL romio applications.
MPI_FILE_GET_INFO should return the info currently in use, not the one
used to create the file handle.  ROMIO adds a bunch of keys, so you can
create a file handle with MPI_INFO_NULL and have MPI_FILE_GET_INFO return
something totatlly different.

This commit was SVN r10312.
2006-06-12 21:45:48 +00:00
George Bosilca
57bdb323b0 Initialize the extent before using it.
This commit was SVN r10309.
2006-06-12 19:38:52 +00:00
George Bosilca
20c34a53f7 Set the lb and extent for the case when the dimension is 1 and make
sure the last_type is defined when we go outside the loop.

This commit was SVN r10297.
2006-06-11 21:27:28 +00:00
George Bosilca
386a02d2ae Rewrite the subarray strictly following the MPI standard. Set the lb and ub
as it should be. I hope I get it right this time ...

This commit was SVN r10293.
2006-06-11 19:57:49 +00:00
Jeff Squyres
8b8bf363c4 Add missing svn:executable property
This commit was SVN r10283.
2006-06-10 10:59:01 +00:00
Jeff Squyres
02d8a46d5f Fix for ticket #89.
* Change the type of Fortan's MPI_STATUSES_IGNORE to double complex
so that it will never possibly be mistaken for a real status (i.e.,
integer(MPI_STATUS_SIZE)), particularly in the F90 bindings.  See
comment in mpif-common.h explaining this (analogous argument to
MPI_ARGVS_NULL for MPI_COMM_SPAWN_MULTIPLE).
 * Add second interfaces for the following functions that take a double
complex (i.e., MPI_STATUSES_IGNORE).  This required adding the second
interface in mpi-f90-interfaces.h[.sh] and then generating new wrapper
functions to call the back-end F77 function for each of these four, so
we added 4 new files in ompi/mpi/f90/scripts/ and updated the various
Makefile.am's to match:
   * MPI_TESTALL
   * MPI_TESTSOME
   * MPI_WAITALL
   * MPI_WAITSOME

The XSL is now not in sync with the scripts.  Although I suppose that
that is becoming less and less important (because it does not impact
the end user at all -- to be 100% explicit, no release should ever be
held up because the XSL is out of sync), but it will probably be
important when we go to fix the "large" interface; so it's still worth
fixing... for now...

This commit was SVN r10281.
2006-06-09 23:40:20 +00:00
Sven Stork
0084c9469a use correct free methode for additional allocated memory
This commit was SVN r10241.
2006-06-07 10:24:28 +00:00
George Bosilca
a64a80dff4 If the user type has a size of zero let's return zero. We will have a consistent behavior
with MPICH.

This commit was SVN r10230.
2006-06-06 19:51:42 +00:00
George Bosilca
7d7e801f15 External pack/unpack fixes.
This commit was SVN r10223.
2006-06-06 03:26:32 +00:00
George Bosilca
07fb4b8012 Allow a block indexed type with a count of zero. Be user friendly and set the ub, lb,
true_lb as well as the true_ub to zero in this case.

This commit was SVN r10208.
2006-06-05 21:16:57 +00:00
George Bosilca
5c2d2fc02a Match size is supposed to return Fortran types.
This commit was SVN r10206.
2006-06-05 21:07:48 +00:00
George Bosilca
e50cdeb927 Allow the creation of strcutres with count zero. And try to have a more friendly behavior
(even if I don't agree with it) by setting the lb, ub, true_lb and true_ub to zero.

This commit was SVN r10205.
2006-06-05 21:07:16 +00:00
Craig E Rasmussen
8a22272ffb Changed to use procedure alias (when names too long).
This commit was SVN r10145.
2006-05-31 15:06:44 +00:00
Craig E Rasmussen
4cd13f07c4 Changed to use procedure alias (when names too long).
This commit was SVN r10144.
2006-05-31 15:04:38 +00:00
Jeff Squyres
5f356edb64 Bring over changes from the /tmp/fortran-stuff series:
- Make the F90 bindings compile and link properly with gfortran 4.0,
  4.1, Intel 9.0, PGI 6.1, Sun (don't know version offhand -- the most
  current as of this writing, I think), and NAG 5.2, although some
  have limitations (e.g., NAG can't seem to handle the medium and
  large sizes)
- Building the F90 "small" module size is now the default, even for
  developers
- Split up mpif.h into multiple files because parts of it were toxic
  to the F90 bindings
- Properly specify unsized/unshaped arrays to make the bindings work
  on all known compilers
- Make ompi_info show Fortran 90 bindings size
- XML somewhat lags the generated scripts as of this commit, but
  functionality was my main goal -- the XML can be updated later (if
  at all).

This commit was SVN r10118.
2006-05-30 14:37:41 +00:00
Jeff Squyres
faf63c68f8 Merge over from the /tmp/fortran-stuff branch
- split mpif.h into mpif.h and mpif-common.h[.in]
- mpif-common.h is included by various f90 things and contains output
  from configure
- mpif.h defines some f77-specific stuff and then includes
  mpif-common.h 

This commit was SVN r9997.
2006-05-20 02:15:49 +00:00
Jeff Squyres
299f4fdb2c Oops -- fix the comment. A victim of cut-n-paste.
This commit was SVN r9971.
2006-05-18 18:10:12 +00:00
Jeff Squyres
942f9e8f8d Fixes for ticket:14. Lengthy discussion is on that ticket and in a
comment in ompi_comm_invalid() in
source:/trunk/ompi/communicator/communicator.h.

Short version:
- ompi_comm_invalid() returns TRUE for MPI_COMM_NULL
- therefore MPI_COMM_C2F needs to explicitly check for MPI_COMM_NULL
  (because it uses ompi_comm_invalid())
- make ~20 MPI functions only call ompi_comm_invalid() instead of
  calling ompi_comm_invalid() *and* checking for MPI_COMM_NULL (~40 MPI
  functions already only called ompi_comm_invalid() -- we should be
  consistent)
- similar issue for ompi_win_invalid(), so I added a cross-referencing
  comment in win.h and fixed MPI_WIN_SET_NAME to only call
  ompi_win_invalid() (and not check for MPI_WIN_NULL)

This commit was SVN r9970.
2006-05-18 18:05:46 +00:00
Jeff Squyres
800ba39152 Fixes for:
- make dist
- proper inclusion of files between trivial and small
- vpath

This commit was SVN r9964.
2006-05-18 11:26:52 +00:00
Jeff Squyres
a7c854f878 Add some comments explaining why these functions have an interface but
no definition.

This commit was SVN r9962.
2006-05-17 22:22:29 +00:00
Jeff Squyres
c3aeaed77b SPAWN_MULTIPLE should actually be in the "small" size, not the
"medium" size.

This commit was SVN r9961.
2006-05-17 21:58:48 +00:00
Craig E Rasmussen
94f463c924 Changes to remove attr_fn functions from the mpi namespace/module.
This commit was SVN r9960.
2006-05-17 21:31:04 +00:00
Jeff Squyres
95c1f12b97 Missed this one yesterday
This commit was SVN r9958.
2006-05-17 16:31:25 +00:00
Jeff Squyres
1f8cc1af65 Add an extra -I so that compilers can find mpi-f90-interfaces.h in a
vpath build.

This commit was SVN r9937.
2006-05-16 17:30:42 +00:00
Jeff Squyres
d3ff507bc2 Add explicit path to mpi-f90-interfaces.h.sh. Blast; I could have
sworn that I committed this yesterday.

This commit was SVN r9935.
2006-05-16 15:00:23 +00:00
Jeff Squyres
3e60cd163e Ensure that mpi_sizeof.f90 is added to the build
This commit was SVN r9925.
2006-05-15 19:32:01 +00:00
Jeff Squyres
332954e168 Spell the AC_SUBST'ed names properly
This commit was SVN r9924.
2006-05-15 19:31:38 +00:00
Jeff Squyres
171585ff34 Ensure to put implicit none *before* the header file includes
This commit was SVN r9923.
2006-05-15 19:31:01 +00:00
Craig E Rasmussen
13c113b39c Changed INOUT to IN in MPI_*_SET_ATTR functions.
This commit was SVN r9922.
2006-05-15 17:13:20 +00:00
Craig E Rasmussen
a547a64f93 Changed INOUT to IN in MPI_*_SET_ATTR functions.
This commit was SVN r9916.
2006-05-15 16:00:04 +00:00
Edgar Gabriel
7e99dc4301 - fix in comm_spawn_multiple: we cannot check for the errorcodes array
being null, if the constant MPI_ERRCODES_IGNORE is defined as (void *)
NULL;
- the communicator in file open has to be an intra-communicator.

This commit was SVN r9893.
2006-05-11 13:23:53 +00:00
Jeff Squyres
87a2458bb1 Make sure to use the C version of the string.
This commit was SVN r9796.
2006-05-03 03:29:06 +00:00
Brian Barrett
1aa13c1e5c * do proper fortran string handling for the MPI-IO functions that take string
arguments.  Thanks to Bernard Knaepen for bringing this to our attention.

This commit was SVN r9792.
2006-05-02 14:39:11 +00:00
Craig E Rasmussen
8a16f844ec Changes MPI_Intercomm_merge high variable from integer to logical
This commit was SVN r9783.
2006-05-01 18:58:35 +00:00
Craig E Rasmussen
0c584d783e Changes MPI_Intercomm_merge high variable from integer to logical
This commit was SVN r9782.
2006-05-01 18:58:05 +00:00
Jeff Squyres
22dbda116e Add in oodles of missing files
This commit was SVN r9767.
2006-04-28 02:22:19 +00:00
Craig E Rasmussen
888c19b9ee Changed bool Fortran type to logical
This commit was SVN r9766.
2006-04-27 22:49:06 +00:00
Craig E Rasmussen
bd77c2b212 Changed bool Fortran type to logical
This commit was SVN r9765.
2006-04-27 22:48:07 +00:00
Craig E Rasmussen
9333a2628b Added counter to output name and changed bool Fortran type to logical
This commit was SVN r9764.
2006-04-27 22:46:48 +00:00
George Bosilca
29fe545451 Remove all references to the ompi_mpi_long_long variable. The MPI_LONG_LONG is now
a synonym to MPI_LONG_LONG_INT.

This commit was SVN r9703.
2006-04-24 22:15:42 +00:00
Jeff Squyres
0556c129df Fix MPI_*_GET_ATTR flag parameter to be of type logical. Thanks to
Michael Kluskens for pointing this out.

This commit was SVN r9676.
2006-04-21 04:31:49 +00:00
Craig E Rasmussen
6de9755919 Added counter to output macro name
This commit was SVN r9675.
2006-04-20 21:30:28 +00:00
Craig E Rasmussen
8646604497 Fixed to match Jeff S's changes to mpi-f90-interfaces.h.sh
This commit was SVN r9674.
2006-04-20 21:18:04 +00:00