Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Remove the need of pthread_mutex in mmalloc, to allow its use with sthread
[simgrid.git] / src / include / xbt / coverage.h
index 30c209e..3a56214 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2019-2020. The SimGrid Team. All rights reserved.               */
+/* Copyright (c) 2019-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. */
 SG_BEGIN_DECL
 
 #ifdef COVERAGE
+
+#if defined(__GNUC__) && __GNUC__ >= 11
+#include "gcov.h"
+#define coverage_checkpoint()                                                                                          \
+  do {                                                                                                                 \
+    __gcov_dump();                                                                                                     \
+    __gcov_reset();                                                                                                    \
+  } while (0)
+#else
 extern void __gcov_flush();
 #define coverage_checkpoint() __gcov_flush()
+#endif
+
 #else
 #define coverage_checkpoint() (void)0
 #endif