X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/f6a147ae4d559391e52232a5d0cde1cd5adf9e62..c99aedab8958910c0e53cb05db70607b6e8ffe77:/src/simix/simcalls_generated_body.c diff --git a/src/simix/simcalls_generated_body.c b/src/simix/simcalls_generated_body.c index c0f636f2dd..1087205862 100644 --- a/src/simix/simcalls_generated_body.c +++ b/src/simix/simcalls_generated_body.c @@ -1100,7 +1100,7 @@ } return self->simcall.result.dp; } - inline static void simcall_BODY_comm_send(smx_rdv_t rdv, double task_size, double rate, void* src_buff, size_t src_buff_size, simix_match_func_t match_fun, void* data, double timeout) { + inline static void simcall_BODY_comm_send(smx_rdv_t rdv, double task_size, double rate, void* src_buff, size_t src_buff_size, simix_match_func_t match_fun, simix_copy_data_func_t copy_data_fun, void* data, double timeout) { smx_process_t self = SIMIX_process_self(); self->simcall.call = SIMCALL_COMM_SEND; memset(&self->simcall.result, 0, sizeof(self->simcall.result)); @@ -1111,8 +1111,9 @@ self->simcall.args[3].dp = (void*) src_buff; self->simcall.args[4].sz = (size_t) src_buff_size; self->simcall.args[5].fp = (FPtr) match_fun; - self->simcall.args[6].dp = (void*) data; - self->simcall.args[7].d = (double) timeout; + self->simcall.args[6].fp = (FPtr) copy_data_fun; + self->simcall.args[7].dp = (void*) data; + self->simcall.args[8].d = (double) timeout; if (self != simix_global->maestro_process) { XBT_DEBUG("Yield process '%s' on simcall %s (%d)", self->name, SIMIX_simcall_name(self->simcall.call), (int)self->simcall.call); @@ -1122,7 +1123,7 @@ } } - inline static smx_action_t simcall_BODY_comm_isend(smx_rdv_t rdv, double task_size, double rate, void* src_buff, size_t src_buff_size, simix_match_func_t match_fun, simix_clean_func_t clean_fun, void* data, int detached) { + inline static smx_action_t simcall_BODY_comm_isend(smx_rdv_t rdv, double task_size, double rate, void* src_buff, size_t src_buff_size, simix_match_func_t match_fun, simix_clean_func_t clean_fun, simix_copy_data_func_t copy_data_fun, void* data, int detached) { smx_process_t self = SIMIX_process_self(); self->simcall.call = SIMCALL_COMM_ISEND; memset(&self->simcall.result, 0, sizeof(self->simcall.result)); @@ -1134,8 +1135,9 @@ self->simcall.args[4].sz = (size_t) src_buff_size; self->simcall.args[5].fp = (FPtr) match_fun; self->simcall.args[6].fp = (FPtr) clean_fun; - self->simcall.args[7].dp = (void*) data; - self->simcall.args[8].i = (int) detached; + self->simcall.args[7].fp = (FPtr) copy_data_fun; + self->simcall.args[8].dp = (void*) data; + self->simcall.args[9].i = (int) detached; if (self != simix_global->maestro_process) { XBT_DEBUG("Yield process '%s' on simcall %s (%d)", self->name, SIMIX_simcall_name(self->simcall.call), (int)self->simcall.call); @@ -1145,7 +1147,7 @@ } return self->simcall.result.dp; } - inline static void simcall_BODY_comm_recv(smx_rdv_t rdv, void* dst_buff, size_t* dst_buff_size, simix_match_func_t match_fun, void* data, double timeout, double rate) { + inline static void simcall_BODY_comm_recv(smx_rdv_t rdv, void* dst_buff, size_t* dst_buff_size, simix_match_func_t match_fun, simix_copy_data_func_t copy_data_fun, void* data, double timeout, double rate) { smx_process_t self = SIMIX_process_self(); self->simcall.call = SIMCALL_COMM_RECV; memset(&self->simcall.result, 0, sizeof(self->simcall.result)); @@ -1154,9 +1156,10 @@ self->simcall.args[1].dp = (void*) dst_buff; self->simcall.args[2].dp = (void*) dst_buff_size; self->simcall.args[3].fp = (FPtr) match_fun; - self->simcall.args[4].dp = (void*) data; - self->simcall.args[5].d = (double) timeout; - self->simcall.args[6].d = (double) rate; + self->simcall.args[4].fp = (FPtr) copy_data_fun; + self->simcall.args[5].dp = (void*) data; + self->simcall.args[6].d = (double) timeout; + self->simcall.args[7].d = (double) rate; if (self != simix_global->maestro_process) { XBT_DEBUG("Yield process '%s' on simcall %s (%d)", self->name, SIMIX_simcall_name(self->simcall.call), (int)self->simcall.call); @@ -1166,7 +1169,7 @@ } } - inline static smx_action_t simcall_BODY_comm_irecv(smx_rdv_t rdv, void* dst_buff, size_t* dst_buff_size, simix_match_func_t match_fun, void* data, double rate) { + inline static smx_action_t simcall_BODY_comm_irecv(smx_rdv_t rdv, void* dst_buff, size_t* dst_buff_size, simix_match_func_t match_fun, simix_copy_data_func_t copy_data_fun, void* data, double rate) { smx_process_t self = SIMIX_process_self(); self->simcall.call = SIMCALL_COMM_IRECV; memset(&self->simcall.result, 0, sizeof(self->simcall.result)); @@ -1175,8 +1178,9 @@ self->simcall.args[1].dp = (void*) dst_buff; self->simcall.args[2].dp = (void*) dst_buff_size; self->simcall.args[3].fp = (FPtr) match_fun; - self->simcall.args[4].dp = (void*) data; - self->simcall.args[5].d = (double) rate; + self->simcall.args[4].fp = (FPtr) copy_data_fun; + self->simcall.args[5].dp = (void*) data; + self->simcall.args[6].d = (double) rate; if (self != simix_global->maestro_process) { XBT_DEBUG("Yield process '%s' on simcall %s (%d)", self->name, SIMIX_simcall_name(self->simcall.call), (int)self->simcall.call); @@ -1692,12 +1696,13 @@ } return self->simcall.result.i; } - inline static int simcall_BODY_file_unlink(smx_file_t fd) { + inline static int simcall_BODY_file_unlink(smx_file_t fd, smx_host_t host) { smx_process_t self = SIMIX_process_self(); self->simcall.call = SIMCALL_FILE_UNLINK; memset(&self->simcall.result, 0, sizeof(self->simcall.result)); memset(self->simcall.args, 0, sizeof(self->simcall.args)); self->simcall.args[0].dp = (void*) fd; + self->simcall.args[1].dp = (void*) host; if (self != simix_global->maestro_process) { XBT_DEBUG("Yield process '%s' on simcall %s (%d)", self->name, SIMIX_simcall_name(self->simcall.call), (int)self->simcall.call); @@ -1737,13 +1742,13 @@ } return self->simcall.result.sgsz; } - inline static int simcall_BODY_file_seek(smx_file_t fd, sg_size_t offset, int origin) { + inline static int simcall_BODY_file_seek(smx_file_t fd, sg_offset_t offset, int origin) { smx_process_t self = SIMIX_process_self(); self->simcall.call = SIMCALL_FILE_SEEK; memset(&self->simcall.result, 0, sizeof(self->simcall.result)); memset(self->simcall.args, 0, sizeof(self->simcall.args)); self->simcall.args[0].dp = (void*) fd; - self->simcall.args[1].sgsz = (sg_size_t) offset; + self->simcall.args[1].sgoff = (sg_offset_t) offset; self->simcall.args[2].i = (int) origin; if (self != simix_global->maestro_process) { XBT_DEBUG("Yield process '%s' on simcall %s (%d)", self->name,