/* Copyright (c) 2015. The SimGrid Team.
-
-/ * All rights reserved. */
+ * 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. */
-#ifndef MC_UNW_H
-#define MC_UNW_H
+#ifndef SIMGRID_MC_UNW_H
+#define SIMGRID_MC_UNW_H
/** \file
* Libunwind implementation for the model-checker
*
* This component implements the libunwind API for he model-checker:
*
- * * reading memory from a mc_address_space_t;
+ * * reading memory from a simgrid::mc::AddressSpace*;
*
* * reading stack registers from a saved snapshot (context).
*
/** Virtual table for our `libunwind` implementation
*
- * Stack unwinding on a `mc_process_t` (for memory, unwinding information)
+ * Stack unwinding on a `simgrid::mc::Process*` (for memory, unwinding information)
* and `ucontext_t` (for processor registers).
*
* It works with the `s_mc_unw_context_t` context.
/** A `libunwind` context
*/
typedef struct s_mc_unw_context {
- mc_address_space_t address_space;
- mc_process_t process;
+ simgrid::mc::AddressSpace* address_space;
+ simgrid::mc::Process* process;
unw_context_t context;
} s_mc_unw_context_t, *mc_unw_context_t;
/** Initialises an already allocated context */
XBT_INTERNAL int mc_unw_init_context(
- mc_unw_context_t context, mc_process_t process, unw_context_t* c);
-
-/** Destroys (but not not `free`) a context */
-XBT_INTERNAL int mc_unw_destroy_context(mc_unw_context_t context);
+ mc_unw_context_t context, simgrid::mc::Process* process, unw_context_t* c);
// ***** Libunwind cursor