Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use XBT_DECLARE_ENUM_CLASS for mc::MessageType.
authorArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Fri, 5 Feb 2021 15:41:49 +0000 (16:41 +0100)
committerArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Fri, 5 Feb 2021 15:41:49 +0000 (16:41 +0100)
MANIFEST.in
src/mc/ModelChecker.cpp
src/mc/remote/AppSide.cpp
src/mc/remote/Channel.cpp
src/mc/remote/mc_protocol.cpp [deleted file]
src/mc/remote/mc_protocol.h
tools/cmake/DefinePackages.cmake

index ca11dc0..3eab48a 100644 (file)
@@ -2317,7 +2317,6 @@ include src/mc/remote/CheckerSide.hpp
 include src/mc/remote/RemotePtr.hpp
 include src/mc/remote/RemoteSimulation.cpp
 include src/mc/remote/RemoteSimulation.hpp
-include src/mc/remote/mc_protocol.cpp
 include src/mc/remote/mc_protocol.h
 include src/mc/sosp/ChunkedData.cpp
 include src/mc/sosp/ChunkedData.hpp
index bce70eb..f7859f4 100644 (file)
@@ -326,7 +326,7 @@ bool ModelChecker::checkDeadlock()
   xbt_assert(s == sizeof(message) && message.type == MessageType::DEADLOCK_CHECK_REPLY,
              "Received unexpected message %s (%i, size=%i) "
              "expected MessageType::DEADLOCK_CHECK_REPLY (%i, size=%i)",
-             MC_message_type_name(message.type), (int)message.type, (int)s, (int)MessageType::DEADLOCK_CHECK_REPLY,
+             to_c_str(message.type), (int)message.type, (int)s, (int)MessageType::DEADLOCK_CHECK_REPLY,
              (int)sizeof(message));
   return message.value != 0;
 }
index 8c3cb1d..3cd49b2 100644 (file)
@@ -141,8 +141,7 @@ void AppSide::handle_messages() const
         break;
 
       default:
-        xbt_die("Received unexpected message %s (%i)", MC_message_type_name(message->type),
-                static_cast<int>(message->type));
+        xbt_die("Received unexpected message %s (%i)", to_c_str(message->type), static_cast<int>(message->type));
         break;
     }
   }
index be28998..cfbf715 100644 (file)
@@ -26,7 +26,7 @@ Channel::~Channel()
 /** @brief Send a message; returns 0 on success or errno on failure */
 int Channel::send(const void* message, size_t size) const
 {
-  XBT_DEBUG("Send %s", MC_message_type_name(*(MessageType*)message));
+  XBT_DEBUG("Send %s", to_c_str(*(MessageType*)message));
   while (::send(this->socket_, message, size, 0) == -1) {
     if (errno != EINTR)
       return errno;
@@ -38,7 +38,7 @@ ssize_t Channel::receive(void* message, size_t size, bool block) const
 {
   ssize_t res = recv(this->socket_, message, size, block ? 0 : MSG_DONTWAIT);
   if (res != -1)
-    XBT_DEBUG("Receive %s", MC_message_type_name(*(MessageType*)message));
+    XBT_DEBUG("Receive %s", to_c_str(*(MessageType*)message));
   return res;
 }
 }
diff --git a/src/mc/remote/mc_protocol.cpp b/src/mc/remote/mc_protocol.cpp
deleted file mode 100644 (file)
index 941c602..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/* Copyright (c) 2015-2021. 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. */
-
-#include "src/mc/remote/mc_protocol.h"
-#include <array>
-
-const char* MC_message_type_name(simgrid::mc::MessageType type)
-{
-  constexpr std::array<const char*, 14> names{{"NONE", "CONTINUE", "IGNORE_HEAP", "UNIGNORE_HEAP", "IGNORE_MEMORY",
-                                               "STACK_REGION", "REGISTER_SYMBOL", "DEADLOCK_CHECK",
-                                               "DEADLOCK_CHECK_REPLY", "WAITING", "SIMCALL_HANDLE", "ASSERTION_FAILED",
-                                               "ACTOR_ENABLED", "ACTOR_ENABLED_REPLY"}};
-  return names[static_cast<int>(type)];
-}
index 83d2239..54ec711 100644 (file)
 #include "simgrid/forward.h" // aid_t
 #include <array>
 #include <cstdint>
+#include <xbt/utility.hpp>
 
 // ***** Messages
 namespace simgrid {
 namespace mc {
 
-enum class MessageType {
-  NONE,
-  CONTINUE,
-  IGNORE_HEAP,
-  UNIGNORE_HEAP,
-  IGNORE_MEMORY,
-  STACK_REGION,
-  REGISTER_SYMBOL,
-  DEADLOCK_CHECK,
-  DEADLOCK_CHECK_REPLY,
-  WAITING,
-  SIMCALL_HANDLE,
-  ASSERTION_FAILED,
-  ACTOR_ENABLED,
-  ACTOR_ENABLED_REPLY
-};
+XBT_DECLARE_ENUM_CLASS(MessageType, NONE, CONTINUE, IGNORE_HEAP, UNIGNORE_HEAP, IGNORE_MEMORY, STACK_REGION,
+                       REGISTER_SYMBOL, DEADLOCK_CHECK, DEADLOCK_CHECK_REPLY, WAITING, SIMCALL_HANDLE, ASSERTION_FAILED,
+                       ACTOR_ENABLED, ACTOR_ENABLED_REPLY);
 
 } // namespace mc
 } // namespace simgrid
@@ -111,7 +99,5 @@ struct s_mc_message_actor_enabled_t {
   aid_t aid; // actor ID
 };
 
-XBT_PRIVATE const char* MC_message_type_name(simgrid::mc::MessageType type);
-
 #endif // __cplusplus
 #endif
index d5e1b5c..1731015 100644 (file)
@@ -623,7 +623,6 @@ set(MC_SRC
   src/mc/remote/RemoteSimulation.cpp
   src/mc/remote/RemotePtr.hpp
   src/mc/remote/mc_protocol.h
-  src/mc/remote/mc_protocol.cpp
 
   src/mc/sosp/PageStore.hpp
   src/mc/sosp/PageStore.cpp