* dwarf.c (display_gdb_index): Include static/global information

of each symbol.
This commit is contained in:
Doug Evans 2012-10-11 14:24:55 +00:00
parent 844226d69a
commit 7c1cef979f
2 changed files with 23 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2012-10-11 Doug Evans <dje@google.com>
* dwarf.c (display_gdb_index): Include static/global information
of each symbol.
2012-09-14 David Edelsohn <dje.gcc@gmail.com> 2012-09-14 David Edelsohn <dje.gcc@gmail.com>
* configure: Regenerate. * configure: Regenerate.

View File

@ -5793,9 +5793,11 @@ display_gdb_index (struct dwarf_section *section,
printf ("\n"); printf ("\n");
for (j = 0; j < num_cus; ++j) for (j = 0; j < num_cus; ++j)
{ {
int is_static;
gdb_index_symbol_kind kind; gdb_index_symbol_kind kind;
cu = byte_get_little_endian (constant_pool + cu_vector_offset + 4 + j * 4, 4); cu = byte_get_little_endian (constant_pool + cu_vector_offset + 4 + j * 4, 4);
is_static = GDB_INDEX_SYMBOL_STATIC_VALUE (cu);
kind = GDB_INDEX_SYMBOL_KIND_VALUE (cu); kind = GDB_INDEX_SYMBOL_KIND_VALUE (cu);
cu = GDB_INDEX_CU_VALUE (cu); cu = GDB_INDEX_CU_VALUE (cu);
/* Convert to TU number if it's for a type unit. */ /* Convert to TU number if it's for a type unit. */
@ -5811,19 +5813,30 @@ display_gdb_index (struct dwarf_section *section,
printf (_(" [no symbol information]")); printf (_(" [no symbol information]"));
break; break;
case GDB_INDEX_SYMBOL_KIND_TYPE: case GDB_INDEX_SYMBOL_KIND_TYPE:
printf (_(" [type]")); printf (is_static
? _(" [static type]")
: _(" [global type]"));
break; break;
case GDB_INDEX_SYMBOL_KIND_VARIABLE: case GDB_INDEX_SYMBOL_KIND_VARIABLE:
printf (_(" [variable]")); printf (is_static
? _(" [static variable]")
: _(" [global variable]"));
break; break;
case GDB_INDEX_SYMBOL_KIND_FUNCTION: case GDB_INDEX_SYMBOL_KIND_FUNCTION:
printf (_(" [function]")); printf (is_static
? _(" [static function]")
: _(" [global function]"));
break; break;
case GDB_INDEX_SYMBOL_KIND_OTHER: case GDB_INDEX_SYMBOL_KIND_OTHER:
printf (_(" [other]")); printf (is_static
? _(" [static other]")
: _(" [global other]"));
break; break;
default: default:
printf (_(" [unknown: %d]"), kind); printf (is_static
? _(" [static unknown: %d]")
: _(" [global unknown: %d]"),
kind);
break; break;
} }
if (num_cus > 1) if (num_cus > 1)