2004-05-07 Michael Snyder <msnyder@redhat.com>

* tracepoint.c (scope_info): Add handling for LOC_COMPUTED,
        LOC_COMPUTED_ARG, and LOC_INDIRECT.
This commit is contained in:
Michael Snyder 2004-05-13 19:09:30 +00:00
parent 4a72a2a60c
commit 450bd37bb0
2 changed files with 27 additions and 7 deletions

View File

@ -1,3 +1,8 @@
2004-05-07 Michael Snyder <msnyder@redhat.com>
* tracepoint.c (scope_info): Add handling for LOC_COMPUTED,
LOC_COMPUTED_ARG, and LOC_INDIRECT.
2004-05-13 Andrew Cagney <cagney@redhat.com>
* infrun.c (handle_inferior_event): Use frame_unwind_id.

View File

@ -2345,7 +2345,7 @@ scope_info (char *args, int from_tty)
sals = decode_line_1 (&args, 1, NULL, 0, &canonical, NULL);
if (sals.nelts == 0)
return; /* presumably decode_line_1 has already warned */
return; /* presumably decode_line_1 has already warned */
/* Resolve line numbers to PC */
resolve_sal_pc (&sals.sals[0]);
@ -2387,7 +2387,8 @@ scope_info (char *args, int from_tty)
break;
case LOC_STATIC:
printf_filtered ("in static storage at address ");
print_address_numeric (SYMBOL_VALUE_ADDRESS (sym), 1, gdb_stdout);
print_address_numeric (SYMBOL_VALUE_ADDRESS (sym),
1, gdb_stdout);
break;
case LOC_REGISTER:
printf_filtered ("a local variable in register $%s",
@ -2419,12 +2420,13 @@ scope_info (char *args, int from_tty)
continue;
case LOC_LABEL:
printf_filtered ("a label at address ");
print_address_numeric (SYMBOL_VALUE_ADDRESS (sym), 1, gdb_stdout);
print_address_numeric (SYMBOL_VALUE_ADDRESS (sym),
1, gdb_stdout);
break;
case LOC_BLOCK:
printf_filtered ("a function at address ");
print_address_numeric (BLOCK_START (SYMBOL_BLOCK_VALUE (sym)), 1,
gdb_stdout);
print_address_numeric (BLOCK_START (SYMBOL_BLOCK_VALUE (sym)),
1, gdb_stdout);
break;
case LOC_BASEREG:
printf_filtered ("a variable at offset %ld from register $%s",
@ -2437,7 +2439,8 @@ scope_info (char *args, int from_tty)
REGISTER_NAME (SYMBOL_BASEREG (sym)));
break;
case LOC_UNRESOLVED:
msym = lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (sym), NULL, NULL);
msym = lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (sym),
NULL, NULL);
if (msym == NULL)
printf_filtered ("Unresolved Static");
else
@ -2450,10 +2453,22 @@ scope_info (char *args, int from_tty)
case LOC_OPTIMIZED_OUT:
printf_filtered ("optimized out.\n");
continue;
case LOC_HP_THREAD_LOCAL_STATIC:
printf_filtered ("HP thread local static ");
break;
case LOC_INDIRECT:
printf_filtered ("extern (local indirect) at address ");
print_address_numeric (SYMBOL_VALUE_ADDRESS (sym),
1, gdb_stdout);
break;
case LOC_COMPUTED:
case LOC_COMPUTED_ARG:
SYMBOL_OPS (sym)->describe_location (sym, gdb_stdout);
break;
}
if (SYMBOL_TYPE (sym))
printf_filtered (", length %d.\n",
TYPE_LENGTH (check_typedef (SYMBOL_TYPE (sym))));
TYPE_LENGTH (check_typedef (SYMBOL_TYPE (sym))));
}
if (BLOCK_FUNCTION (block))
break;