-void MC_dwarf_register_non_global_variable(
- mc_object_info_t info,
- mc_frame_t frame,
- std::unique_ptr<simgrid::mc::Variable> variable)
-{
- xbt_assert(frame, "Frame is NULL");
- int index =
- MC_dwarf_get_variable_index(
- frame->variables, variable->name.c_str(), NULL);
- if (index != -1)
- frame->variables.insert(
- frame->variables.begin() + index, std::move(*variable));
- // TODO, else ?
-}
-
-void MC_dwarf_register_variable(
- mc_object_info_t info, mc_frame_t frame,
- std::unique_ptr<simgrid::mc::Variable> variable)
-{
- if (!variable)
- return;
- if (variable->global)
- MC_dwarf_register_global_variable(info, std::move(variable));
- else if (frame != nullptr)
- MC_dwarf_register_non_global_variable(info, frame, std::move(variable));
- else
- xbt_die("No frame for this local variable");
-}
-
-void MC_post_process_object_info(mc_process_t process, mc_object_info_t info)
-{
- xbt_dict_cursor_t cursor = NULL;
- char *key = NULL;
- mc_type_t type = NULL;
- xbt_dict_foreach(info->types, cursor, key, type) {
-
- mc_type_t subtype = type;
- while (subtype->type == DW_TAG_typedef || subtype->type == DW_TAG_volatile_type
- || subtype->type == DW_TAG_const_type) {
+ simgrid::mc::Type* type = &(i.second);
+ simgrid::mc::Type* subtype = type;
+ while (subtype->type == DW_TAG_typedef
+ || subtype->type == DW_TAG_volatile_type
+ || subtype->type == DW_TAG_const_type)