Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'fix_bindings_mistakenly_set_as_member_functions' into 'master'
[simgrid.git] / src / smpi / bindings / smpi_pmpi.cpp
index d1b76c9ce8f8fdfe0301d3775b92bbedde95eb4f..8764f14f5a245eef41c1167149cba634b0a0e167 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2007-2021. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2007-2022. The SimGrid Team. All rights reserved.          */
 
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
@@ -8,10 +8,11 @@
 #include "simgrid/s4u/Engine.hpp"
 #include "simgrid/s4u/Host.hpp"
 #include "simgrid/version.h"
+#include "smpi_coll.hpp"
 #include "smpi_comm.hpp"
 #include "smpi_datatype_derived.hpp"
 #include "smpi_status.hpp"
-#include "smpi_coll.hpp"
+#include "src/kernel/EngineImpl.hpp"
 #include "src/kernel/actor/ActorImpl.hpp"
 #include "src/smpi/include/smpi_actor.hpp"
 
@@ -25,7 +26,7 @@ void TRACE_smpi_set_category(const char *category)
 
   if (category != nullptr) {
     // declare category
-    TRACE_category(category);
+    simgrid::instr::declare_tracing_category(category);
     smpi_process()->set_tracing_category(category);
   }
 }
@@ -88,7 +89,7 @@ int PMPI_Get_version (int *version,int *subversion){
 }
 
 int PMPI_Get_library_version (char *version,int *len){
-  snprintf(version, MPI_MAX_LIBRARY_VERSION_STRING, "SMPI Version %d.%d. Copyright The SimGrid Team 2007-2021",
+  snprintf(version, MPI_MAX_LIBRARY_VERSION_STRING, "SMPI Version %d.%d. Copyright The SimGrid Team 2007-2022",
            SIMGRID_VERSION_MAJOR, SIMGRID_VERSION_MINOR);
   *len = std::min(static_cast<int>(strlen(version)), MPI_MAX_LIBRARY_VERSION_STRING);
   return MPI_SUCCESS;
@@ -131,14 +132,14 @@ int PMPI_Abort(MPI_Comm comm, int /*errorcode*/)
   smpi_bench_end();
   CHECK_COMM(1)
   XBT_WARN("MPI_Abort was called, something went probably wrong in this simulation ! Killing all processes sharing the same MPI_COMM_WORLD");
-  smx_actor_t myself = SIMIX_process_self();
+  auto myself = simgrid::kernel::actor::ActorImpl::self();
   for (int i = 0; i < comm->size(); i++){
-    smx_actor_t actor = simgrid::kernel::actor::ActorImpl::by_pid(comm->group()->actor(i));
+    auto actor = simgrid::kernel::EngineImpl::get_instance()->get_actor_by_pid(comm->group()->actor(i));
     if (actor != nullptr && actor != myself)
-      simgrid::kernel::actor::simcall([actor] { actor->exit(); });
+      simgrid::kernel::actor::simcall_answered([actor] { actor->exit(); });
   }
   // now ourself
-  simgrid::kernel::actor::simcall([myself] { myself->exit(); });
+  simgrid::kernel::actor::simcall_answered([myself] { myself->exit(); });
   return MPI_SUCCESS;
 }