1 /* Copyright (c) 2010-2016. The SimGrid Team.
2 * All rights reserved. */
4 /* This program is free software; you can redistribute it and/or modify it
5 * under the terms of the license (GNU LGPL) which comes with this package. */
7 /* Copyright (C) 1991, 1992 Free Software Foundation, Inc.
8 This file was then part of the GNU C Library. */
10 #ifndef SIMGRID_MC_MALLOC_HPP
11 #define SIMGRID_MC_MALLOC_HPP
15 #include <xbt/mmalloc.h>
16 #include <xbt/dynar.h>
18 #include "src/mc/mc_forward.hpp"
19 #include "src/mc/Process.hpp"
24 XBT_PRIVATE int mmalloc_compare_heap(Snapshot* snapshot1, Snapshot* snapshot2);
25 XBT_PRIVATE int mmalloc_linear_compare_heap(xbt_mheap_t heap1, xbt_mheap_t heap2);
26 XBT_PRIVATE int init_heap_information(xbt_mheap_t heap1, xbt_mheap_t heap2,
27 std::vector<simgrid::mc::IgnoredHeapRegion>* i1,
28 std::vector<simgrid::mc::IgnoredHeapRegion>* i2);
29 XBT_PRIVATE int compare_heap_area(
30 int process_index, const void *area1, const void* area2,
31 Snapshot* snapshot1, Snapshot* snapshot2,
32 xbt_dynar_t previous, Type* type, int pointer_level);
33 XBT_PRIVATE void reset_heap_information(void);