src/developer/debug/zxdb/console/format_context.cc
// Describes the destination for the given call destination, formatted as for a disassembly. The
// process may be null which will mean only addresses will be printed, no symbols.
Describes the destination for the given call destination, formatted as for a disassembly. The
process may be null which will mean only addresses will be printed, no symbols.
Describes the destination for the given call destination formatted as for a disassembly . The process may be null which will mean only addresses will be printed no symbols .
OutputBuffer DescribeAsmCallDest(Process* process, uint64_t call_dest) {
  OutputBuffer result(Syntax::kComment, GetRightArrow() + " ");
  std::vector<Location> resolved;
  if (process) {
    ResolveOptions options;
    options.ambiguous_inline = ResolveOptions::AmbiguousInline::kOuter;
    resolved = process->GetSymbols()->ResolveInputLocation(InputLocation(call_dest), options);
    FX_DCHECK(resolved.size() == 1);  
  } else {
    resolved.emplace_back(Location(Location::State::kAddress, call_dest));
  }
  FormatLocationOptions opts;
  if (process)
    opts = FormatLocationOptions(process->GetTarget());
  opts.always_show_addresses = false;
  opts.show_params = false;
  opts.show_file_line = false;
  result.Append(FormatLocation(resolved[0], opts));
  return result;
}
OutputBuffer DescribeAsmCallDest ( Process * process , uint64_t call_dest ) { OutputBuffer result ( Syntax :: kComment , GetRightArrow ( ) + " " ) ; std :: vector < Location > resolved ; if ( process ) { ResolveOptions options ; options . ambiguous_inline = ResolveOptions :: AmbiguousInline :: kOuter ; resolved = process -> GetSymbols ( ) -> ResolveInputLocation ( InputLocation ( call_dest ) , options ) ; FX_DCHECK ( resolved . size ( ) == 1 ) ; } else { resolved . emplace_back ( Location ( Location :: State :: kAddress , call_dest ) ) ; } FormatLocationOptions opts ; if ( process ) opts = FormatLocationOptions ( process -> GetTarget ( ) ) ; opts . always_show_addresses = false ; opts . show_params = false ; opts . show_file_line = false ; result . Append ( FormatLocation ( resolved [ 0 ] , opts ) ) ; return result ; }
Describes the destination for the given call destination, formatted as for a disassembly.
Describes the destination for the given call destination formatted as for a disassembly .
// If there are multiple symbols starting at the given location (like nested inline calls), use // the outermost one since this is a jump *to* that location. // Addresses should always match one location. // Can't symbolize, use the address.