Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[simix] Use std::string for s_smx_process_arg
[simgrid.git] / src / mc / LocationList.hpp
index 289a2c1..52efb5b 100644 (file)
 #include <dwarf.h>
 #include <elfutils/libdw.h>
 
+#include <xbt/base.h>
 #include <xbt/range.hpp>
 
-#include "simgrid_config.h"
 #include "src/mc/mc_base.h"
 #include "src/mc/mc_forward.hpp"
-#include "src/mc/AddressSpace.hpp"
 #include "src/mc/DwarfExpression.hpp"
 
 namespace simgrid {
 namespace dwarf {
 
-/** \brief A DWARF expression with optional validity contraints */
+/** \brief A DWARF expression with optional validity constraints */
 class LocationListEntry {
 public:
-  typedef simgrid::xbt::range<std::uint64_t> range_type;
+  typedef simgrid::xbt::Range<std::uint64_t> range_type;
 private:
   DwarfExpression expression_;
-  range_type range_ = {0, 0};
+  range_type range_ = {0, UINT64_MAX};
 public:
   LocationListEntry() {}
   LocationListEntry(DwarfExpression expression, range_type range)
     : expression_(std::move(expression)), range_(range)
   {}
   LocationListEntry(DwarfExpression expression)
-    : expression_(std::move(expression)), range_({0, 0})
+    : expression_(std::move(expression)), range_({0, UINT64_MAX})
   {}
 
   DwarfExpression& expression()
@@ -50,13 +49,9 @@ public:
   {
     return expression_;
   }
-  bool always_valid() const
-  {
-    return range_.begin() == 0 && range_.end() == 0;
-  }
   bool valid_for_ip(unw_word_t ip) const
   {
-    return always_valid() || range_.contain(ip);
+    return range_.contain(ip);
   }
 };