X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/5a97de8c98502af9f74cfceb924fa02e0fd80925..638d55dcb8d944f7c74127725f1acb7b8e1449de:/src/simix/simcalls.py diff --git a/src/simix/simcalls.py b/src/simix/simcalls.py index 41bd69d13a..997a60b67e 100755 --- a/src/simix/simcalls.py +++ b/src/simix/simcalls.py @@ -281,7 +281,7 @@ if __name__=='__main__': fd.write('#include "smx_private.h"\n'); fd.write('#ifdef HAVE_MC\n'); - # fd.write('#include "mc/mc_private.h"\n'); + fd.write('#include "mc/mc_process.h"\n'); fd.write('#endif\n'); fd.write('\n'); fd.write('XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(simix_popping);\n\n'); @@ -302,6 +302,11 @@ if __name__=='__main__': fd.write(' */\n'); fd.write('void SIMIX_simcall_handle(smx_simcall_t simcall, int value) {\n'); fd.write(' XBT_DEBUG("Handling simcall %p: %s", simcall, SIMIX_simcall_name(simcall->call));\n'); + fd.write(' #ifdef HAVE_MC\n'); + fd.write(' if (mc_model_checker) {\n'); + fd.write(' MC_invalidate_cache();\n'); + fd.write(' }\n'); + fd.write(' #endif\n'); fd.write(' SIMCALL_SET_MC_VALUE(simcall, value);\n'); fd.write(' if (simcall->issuer->context->iwannadie && simcall->call != SIMCALL_PROCESS_CLEANUP)\n'); fd.write(' return;\n'); @@ -328,7 +333,7 @@ if __name__=='__main__': ### fd = header('popping_bodies.c') fd.write('#include "smx_private.h"\n') - fd.write('#include "mc/mc_interface.h"\n') + fd.write('#include "mc/mc_forward.h"\n') fd.write('#include "xbt/ex.h"\n') handle(fd, Simcall.body, simcalls, simcalls_dict) fd.close()