source: CIVL/examples/contracts/contractsMPI/simpleMpiValid.c@ a58f6ca

1.23 2.0 acw/focus-triggers main test-branch
Last change on this file since a58f6ca was a58f6ca, checked in by Ziqing Luo <ziqing@…>, 10 years ago

commit work and example for the elaboarate MPI_Datatype issue

git-svn-id: svn://vsl.cis.udel.edu/civl/trunk@3547 fb995dde-84ed-4084-dfe6-e5aef3e2452c

  • Property mode set to 100644
File size: 444 bytes
Line 
1#include<mpi.h>
2#include<assert.h>
3
4
5#define comm MPI_COMM_WORLD
6
7
8/*@ \mpi_collective(comm, P2P):
9 @ ensures \mpi_agree(\mpi_region(x, 2, datatype));
10 @*/
11int bcast(void * x, MPI_Datatype datatype) {
12 return 0;
13}
14
15
16/*@
17 @ \mpi_collective(comm, P2P):
18 @ requires \mpi_valid(data, 2, datatype) && \mpi_agree(datatype);
19 @
20 @*/
21double target(void * data, MPI_Datatype datatype) {
22 bcast(data, datatype);
23 $free(data);
24 return 0;
25}
Note: See TracBrowser for help on using the repository browser.