- simgrid::dwarf::DwarfExpression expression;
- void* lowpc, *highpc;
-
- LocationListEntry() : lowpc(nullptr), highpc(nullptr) {}
+ typedef simgrid::xbt::Range<std::uint64_t> range_type;
+private:
+ DwarfExpression expression_;
+ // By default, the expression is always valid:
+ range_type range_ = {0, UINT64_MAX};
+public:
+ LocationListEntry() = default;
+ LocationListEntry(DwarfExpression expression, range_type range)
+ : expression_(std::move(expression)), range_(range)
+ {}
+ explicit LocationListEntry(DwarfExpression expression) : expression_(std::move(expression)), range_({0, UINT64_MAX})
+ {
+ }