X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ba9a4cfeba4eb00e84cd17603fc9654e81445655..5eeb3c843b60e9ba5e1a952ffe83df2a4d8f5fa0:/src/mc/Variable.hpp diff --git a/src/mc/Variable.hpp b/src/mc/Variable.hpp index 7e04621a49..563da5bcf4 100644 --- a/src/mc/Variable.hpp +++ b/src/mc/Variable.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2007-2015. The SimGrid Team. +/* Copyright (c) 2007-2018. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -11,7 +11,7 @@ #include -#include "src/mc/mc_forward.h" +#include "src/mc/mc_forward.hpp" #include "src/mc/LocationList.hpp" namespace simgrid { @@ -20,16 +20,26 @@ namespace mc { /** A variable (global or local) in the model-checked program */ class Variable { public: - Variable() {} - unsigned dwarf_offset = 0; /* Global offset of the field. */ - int global = 0; + Variable() = default; + std::uint32_t id = 0; + bool global = false; std::string name; unsigned type_id = 0; simgrid::mc::Type* type = nullptr; - // Use either of: - simgrid::dwarf::LocationList location_list; + + /** Address of the variable (if it is fixed) */ void* address = nullptr; + + /** Description of the location of the variable (if it's not fixed) */ + simgrid::dwarf::LocationList location_list; + + /** Offset of validity of the variable (DW_AT_start_scope) + * + * This is an offset from the variable scope beginning. This variable + * is only valid starting from this offset. + */ std::size_t start_scope = 0; + simgrid::mc::ObjectInformation* object_info = nullptr; };