aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2014-06-03 10:47:55 +0930
committerAlan Modra <amodra@gmail.com>2014-06-03 10:47:55 +0930
commit61f5c66f62502f33e1f2441a043bd29bb3ad6ea5 (patch)
treea766bf3d998af52c11ec20fbed73d5b0cf87b779
parent6aa5f3a6ed6482e242fb5aec2a4ae378b53b801d (diff)
downloadgdb-61f5c66f62502f33e1f2441a043bd29bb3ad6ea5.zip
gdb-61f5c66f62502f33e1f2441a043bd29bb3ad6ea5.tar.gz
gdb-61f5c66f62502f33e1f2441a043bd29bb3ad6ea5.tar.bz2
Fix gold plugin_test failures on PowerPC64 ELFv2
readelf output for ELFv2 includes st_other bits specifying a function's local entry offset. * testsuite/plugin_test.c (parse_readelf_line): Skip non-visibility st_other output.
-rw-r--r--gold/ChangeLog5
-rw-r--r--gold/testsuite/plugin_test.c7
2 files changed, 12 insertions, 0 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index b421ad9..0bde6a1 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,8 @@
+2014-06-03 Alan Modra <amodra@gmail.com>
+
+ * testsuite/plugin_test.c (parse_readelf_line): Skip non-visibility
+ st_other output.
+
2014-06-02 Alan Modra <amodra@gmail.com>
* powerpc.cc (Target_powerpc::local_reloc_may_be_function_pointer):
diff --git a/gold/testsuite/plugin_test.c b/gold/testsuite/plugin_test.c
index 68f9d99..79ae44e 100644
--- a/gold/testsuite/plugin_test.c
+++ b/gold/testsuite/plugin_test.c
@@ -584,6 +584,13 @@ parse_readelf_line(char* p, struct sym_info* info)
p += strcspn(p, " ");
p += strspn(p, " ");
+ if (*p == '[')
+ {
+ /* Skip st_other. */
+ p += strcspn(p, "]");
+ p += strspn(p, "] ");
+ }
+
/* Section field. */
info->sect = p;
p += strcspn(p, " ");