From 10b2d9dd13822a8280f80f522fbdb3537de8b706 Mon Sep 17 00:00:00 2001 From: Arnaud Giersch Date: Thu, 21 Mar 2019 21:58:38 +0100 Subject: [PATCH 1/1] Use xbt_malloc() and friends. --- src/s4u/s4u_Host.cpp | 2 +- src/s4u/s4u_Link.cpp | 2 +- src/smpi/plugins/ampi/ampi.cpp | 13 +++++++------ 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/s4u/s4u_Host.cpp b/src/s4u/s4u_Host.cpp index 318727b216..f8c819044c 100644 --- a/src/s4u/s4u_Host.cpp +++ b/src/s4u/s4u_Host.cpp @@ -338,7 +338,7 @@ sg_host_t* sg_host_list() xbt_assert(sg_host_count() > 0, "There is no host!"); std::vector hosts = simgrid::s4u::Engine::get_instance()->get_all_hosts(); - sg_host_t* res = (sg_host_t*)malloc(sizeof(sg_host_t) * hosts.size()); + sg_host_t* res = xbt_new(sg_host_t, hosts.size()); memcpy(res, hosts.data(), sizeof(sg_host_t) * hosts.size()); return res; diff --git a/src/s4u/s4u_Link.cpp b/src/s4u/s4u_Link.cpp index 92bd54b79b..456c57d006 100644 --- a/src/s4u/s4u_Link.cpp +++ b/src/s4u/s4u_Link.cpp @@ -156,7 +156,7 @@ sg_link_t* sg_link_list() { std::vector links = simgrid::s4u::Engine::get_instance()->get_all_links(); - sg_link_t* res = (sg_link_t*)malloc(sizeof(sg_link_t) * links.size()); + sg_link_t* res = xbt_new(sg_link_t, links.size()); memcpy(res, links.data(), sizeof(sg_link_t) * links.size()); return res; diff --git a/src/smpi/plugins/ampi/ampi.cpp b/src/smpi/plugins/ampi/ampi.cpp index 6c005be0f5..e0e44e01b2 100644 --- a/src/smpi/plugins/ampi/ampi.cpp +++ b/src/smpi/plugins/ampi/ampi.cpp @@ -5,11 +5,12 @@ #include #include -#include +#include #include +#include #include -#include #include +#include #include "ampi.hpp" #include @@ -24,7 +25,7 @@ extern "C" XBT_PUBLIC void* _sampi_calloc(size_t num_elm, size_t elem_size); extern "C" XBT_PUBLIC void* _sampi_realloc(void* ptr, size_t size); extern "C" void* _sampi_malloc(size_t size) { - void* result = malloc (size); // We need the space here to prevent recursive substitution + void* result = xbt_malloc(size); alloc_table.insert({result, size}); if (not simgrid::s4u::this_actor::is_maestro()) { memory_size[simgrid::s4u::this_actor::get_pid()] += size; @@ -37,12 +38,12 @@ extern "C" void _sampi_free(void* ptr) size_t alloc_size = alloc_table.at(ptr); int my_proc_id = simgrid::s4u::this_actor::get_pid(); memory_size[my_proc_id] -= alloc_size; - free(ptr); + xbt_free(ptr); } extern "C" void* _sampi_calloc(size_t num_elm, size_t elem_size) { - void* result = calloc (num_elm, elem_size); // We need the space here to prevent recursive substitution + void* result = xbt_malloc0(num_elm * elem_size); alloc_table.insert({result, num_elm * elem_size}); if (not simgrid::s4u::this_actor::is_maestro()) { memory_size[simgrid::s4u::this_actor::get_pid()] += num_elm * elem_size; @@ -51,7 +52,7 @@ extern "C" void* _sampi_calloc(size_t num_elm, size_t elem_size) } extern "C" void* _sampi_realloc(void* ptr, size_t size) { - void* result = realloc (ptr, size); // We need the space here to prevent recursive substitution + void* result = xbt_realloc(ptr, size); int old_size = alloc_table.at(ptr); alloc_table.erase(ptr); alloc_table.insert({result, size}); -- 2.20.1