67 lines
2.5 KiB
Diff
67 lines
2.5 KiB
Diff
|
diff -rup binutils.orig/binutils/readelf.c binutils-2.29/binutils/readelf.c
|
||
|
--- binutils.orig/binutils/readelf.c 2017-12-12 16:24:19.571221194 +0000
|
||
|
+++ binutils-2.29/binutils/readelf.c 2017-12-12 16:27:26.997979803 +0000
|
||
|
@@ -11018,12 +11018,14 @@ print_dynamic_symbol (bfd_vma si, unsign
|
||
|
unsigned int vis = ELF_ST_VISIBILITY (psym->st_other);
|
||
|
|
||
|
printf (" %-7s", get_symbol_visibility (vis));
|
||
|
+#if 0
|
||
|
/* Check to see if any other bits in the st_other field are set.
|
||
|
Note - displaying this information disrupts the layout of the
|
||
|
table being generated, but for the moment this case is very
|
||
|
rare. */
|
||
|
if (psym->st_other ^ vis)
|
||
|
printf (" [%s] ", get_symbol_other (psym->st_other ^ vis));
|
||
|
+#endif
|
||
|
}
|
||
|
|
||
|
printf (" %3.3s ", get_symbol_index_type (psym->st_shndx));
|
||
|
@@ -11031,6 +11033,15 @@ print_dynamic_symbol (bfd_vma si, unsign
|
||
|
print_symbol (25, GET_DYNAMIC_NAME (psym->st_name));
|
||
|
else
|
||
|
printf (_(" <corrupt: %14ld>"), psym->st_name);
|
||
|
+#if 1
|
||
|
+ {
|
||
|
+ unsigned int vis = ELF_ST_VISIBILITY (psym->st_other);
|
||
|
+
|
||
|
+ /* Check to see if any other bits in the st_other field are set. */
|
||
|
+ if (psym->st_other ^ vis)
|
||
|
+ printf (" \t[%s]", get_symbol_other (psym->st_other ^ vis));
|
||
|
+ }
|
||
|
+#endif
|
||
|
putchar ('\n');
|
||
|
}
|
||
|
|
||
|
--- binutils.orig/binutils/readelf.c 2017-12-12 16:36:21.806561149 +0000
|
||
|
+++ binutils-2.29.1/binutils/readelf.c 2017-12-12 16:38:17.763168514 +0000
|
||
|
@@ -11548,11 +11548,13 @@ process_symbol_table (FILE * file)
|
||
|
unsigned int vis = ELF_ST_VISIBILITY (psym->st_other);
|
||
|
|
||
|
printf (" %-7s", get_symbol_visibility (vis));
|
||
|
+#if 0
|
||
|
/* Check to see if any other bits in the st_other field are set.
|
||
|
Note - displaying this information disrupts the layout of the
|
||
|
table being generated, but for the moment this case is very rare. */
|
||
|
if (psym->st_other ^ vis)
|
||
|
printf (" [%s] ", get_symbol_other (psym->st_other ^ vis));
|
||
|
+#endif
|
||
|
}
|
||
|
printf (" %4s ", get_symbol_index_type (psym->st_shndx));
|
||
|
print_symbol (25, psym->st_name < strtab_size
|
||
|
@@ -11571,7 +11573,15 @@ process_symbol_table (FILE * file)
|
||
|
printf (sym_info == symbol_hidden ? "@%s" : "@@%s",
|
||
|
version_string);
|
||
|
}
|
||
|
+#if 1
|
||
|
+ {
|
||
|
+ unsigned int vis = ELF_ST_VISIBILITY (psym->st_other);
|
||
|
|
||
|
+ /* Check to see if any other bits in the st_other field are set. */
|
||
|
+ if (psym->st_other ^ vis)
|
||
|
+ printf (" \t[%s] ", get_symbol_other (psym->st_other ^ vis));
|
||
|
+ }
|
||
|
+#endif
|
||
|
putchar ('\n');
|
||
|
|
||
|
if (ELF_ST_BIND (psym->st_info) == STB_LOCAL
|