A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Distinguish access to sender-side and receiver-side user data in smx_action_t.
[simgrid.git]
/
src
/
simix
/
smurf_private.h
diff --git
a/src/simix/smurf_private.h
b/src/simix/smurf_private.h
index
c031459
..
4f0a7ab
100644
(file)
--- a/
src/simix/smurf_private.h
+++ b/
src/simix/smurf_private.h
@@
-53,7
+53,8
@@
typedef enum {
REQ_COMM_TESTANY,
REQ_COMM_GET_REMAINS,
REQ_COMM_GET_STATE,
REQ_COMM_TESTANY,
REQ_COMM_GET_REMAINS,
REQ_COMM_GET_STATE,
- REQ_COMM_GET_DATA,
+ REQ_COMM_GET_SRC_DATA,
+ REQ_COMM_GET_DST_DATA,
REQ_COMM_GET_SRC_BUFF,
REQ_COMM_GET_DST_BUFF,
REQ_COMM_GET_SRC_BUFF_SIZE,
REQ_COMM_GET_SRC_BUFF,
REQ_COMM_GET_DST_BUFF,
REQ_COMM_GET_SRC_BUFF_SIZE,
@@
-277,14
+278,17
@@
typedef struct s_smx_req {
double rate;
void *src_buff;
size_t src_buff_size;
double rate;
void *src_buff;
size_t src_buff_size;
+ int (*match_fun)(void *, void *);
void *data;
void *data;
- smx_action_t result;
+ smx_action_t result;
} comm_isend;
struct {
smx_rdv_t rdv;
void *dst_buff;
size_t *dst_buff_size;
} comm_isend;
struct {
smx_rdv_t rdv;
void *dst_buff;
size_t *dst_buff_size;
+ int (*match_fun)(void *, void *);
+ void *data;
smx_action_t result;
} comm_irecv;
smx_action_t result;
} comm_irecv;
@@
-328,8
+332,13
@@
typedef struct s_smx_req {
struct {
smx_action_t comm;
struct {
smx_action_t comm;
- void *result;
- } comm_get_data;
+ void *result;
+ } comm_get_src_data;
+
+ struct {
+ smx_action_t comm;
+ void *result;
+ } comm_get_dst_data;
struct {
smx_action_t comm;
struct {
smx_action_t comm;