Exemplo n.º 1
0
Location resolve(
  simgrid::dwarf::LocationList const& locations,
  simgrid::mc::ObjectInformation* object_info,
  unw_cursor_t * c,
  void *frame_pointer_address,
  simgrid::mc::AddressSpace* address_space,
  int process_index)
{
  unw_word_t ip = 0;
  if (c && unw_get_reg(c, UNW_REG_IP, &ip))
    xbt_die("Could not resolve IP");
  simgrid::dwarf::DwarfExpression const* expression =
    find_expression(locations, ip);
  if (!expression)
    xbt_die("Could not resolve location");
  return simgrid::dwarf::resolve(
          *expression, object_info, c,
          frame_pointer_address, address_space, process_index);
}
Exemplo n.º 2
0
 bool has_expression(const ExpressionTypePtr& expression) const
 {
   return find_expression(expression) != num_expressions();
 }