#include <xbt/log.h>
#include <xbt/sysdep.h>
-#include "src/mc/mc_object_info.h"
#include "src/mc/mc_private.h"
#include "src/mc/mc_dwarf.hpp"
+#include "src/mc/mc_object_info.h"
#include "src/mc/Process.hpp"
#include "src/mc/ObjectInformation.hpp"
#include "src/mc/Variable.hpp"
case DW_TAG_pointer_type:
case DW_TAG_reference_type:
case DW_TAG_rvalue_reference_type:
- type.is_pointer_type = 1;
break;
case DW_TAG_structure_type:
uintptr_t offset = (uintptr_t) expr[0].number;
uintptr_t base = (uintptr_t) info->base_address();
variable->address = (void *) (base + offset);
- } else {
- simgrid::dwarf::LocationListEntry entry;
- entry.expression = {expr, expr + len};
- variable->location_list = { std::move(entry) };
- }
+ } else
+ variable->location_list = {
+ simgrid::dwarf::DwarfExpression(expr, expr + len) };
break;
}
std::shared_ptr<simgrid::mc::ObjectInformation> result =
std::make_shared<simgrid::mc::ObjectInformation>();
result->file_name = name;
- MC_find_object_address(maps, result.get());
+ simgrid::mc::find_object_address(maps, result.get());
MC_dwarf_get_variables(result.get());
MC_post_process_variables(result.get());
MC_post_process_types(result.get());