source: CIVL/examples/contracts/contractsMPI/simpleMpiAgree.c

main
Last change on this file was ea777aa, checked in by Alex Wilton <awilton@…>, 3 years ago

Moved examples, include, build_default.properties, common.xml, and README out from dev.civl.com into the root of the repo.

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

  • Property mode set to 100644
File size: 375 bytes
RevLine 
[214ffce]1#include<mpi.h>
2#include<assert.h>
3
4
5#define comm MPI_COMM_WORLD
6
[cc2ac3e]7/*@
[214ffce]8 @ \mpi_collective(comm, P2P):
[cc2ac3e]9 @ requires \mpi_valid(x, 1, MPI_INT);
[214ffce]10 @ ensures \mpi_agree(*x);
11 @*/
12int bcast(int * x) {
13 return 0;
14}
15
16
17/*@
18 @ \mpi_collective(comm, P2P):
19 @ ensures \mpi_agree(\result);
20 @*/
21int target() {
22 int rank;
23
[7bbef04]24 $havoc(&rank);
[214ffce]25 bcast(&rank);
26 return rank;
27}
Note: See TracBrowser for help on using the repository browser.