X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/31a461643fe82c00e0fe4efc8941eee20b0838ea..4a6b0a991a67e6f2f67c03fed43529e078da7115:/src/mc/Frame.hpp diff --git a/src/mc/Frame.hpp b/src/mc/Frame.hpp index bdbbbca791..ee39960531 100644 --- a/src/mc/Frame.hpp +++ b/src/mc/Frame.hpp @@ -9,8 +9,12 @@ #include -#include "mc_forward.h" -#include "mc_location.h" +#include + +#include "src/mc/mc_forward.h" +#include "src/mc/LocationList.hpp" +#include "src/mc/Variable.hpp" +#include "src/mc/Frame.hpp" namespace simgrid { namespace mc { @@ -23,14 +27,28 @@ public: std::string name; void *low_pc; void *high_pc; - simgrid::mc::LocationList frame_base; + simgrid::dwarf::LocationList frame_base_location; std::vector variables; unsigned long int id; /* DWARF offset of the subprogram */ std::vector scopes; unsigned long int abstract_origin_id; simgrid::mc::ObjectInformation* object_info; + + void* frame_base(unw_cursor_t& unw_cursor) const; + void remove_variable(char* name); }; +inline +Frame::Frame() +{ + this->tag = 0; + this->low_pc = nullptr; + this->high_pc = nullptr; + this->id = 0; + this->abstract_origin_id = 0; + this->object_info = nullptr; +} + } }