about summary refs log tree commit diff
path: root/conform/linknamespace.pl
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2015-05-12 17:09:49 +0000
committerJoseph Myers <joseph@codesourcery.com>2015-05-12 17:09:49 +0000
commit8e65ea4dc05e32a2d461f9db8e570f2c0fcbecbc (patch)
treecfc34db9cf2dfe83db02ff46ca5a9d644767ca34 /conform/linknamespace.pl
parentf13c2a8dff2329c6692a80176262ceaaf8a6f74e (diff)
downloadglibc-8e65ea4dc05e32a2d461f9db8e570f2c0fcbecbc.tar.gz
glibc-8e65ea4dc05e32a2d461f9db8e570f2c0fcbecbc.tar.xz
glibc-8e65ea4dc05e32a2d461f9db8e570f2c0fcbecbc.zip
Fix linknamespace test handling of architecture-specific st_other.
For mips16, some of the linknamespace tests were failing because
[MIPS16] annotations in readelf output were wrongly interpreted as
falling in the symbol index field, meaning symbol index values were
wrongly interpreted as symbol names and such names as 1 and 2 then
resulted in namespace test failures.

This patch fixes this by removing the annotations for such
architecture-specific st_other bits before splitting the readelf
output into fields.  Tested for x86_64 and mips16.

	* conform/linknamespace.pl (list_syms): Remove \[.*?\] before
	splitting into fields.
Diffstat (limited to 'conform/linknamespace.pl')
-rw-r--r--conform/linknamespace.pl3
1 files changed, 3 insertions, 0 deletions
diff --git a/conform/linknamespace.pl b/conform/linknamespace.pl
index b5347466b0..8ea437d457 100644
--- a/conform/linknamespace.pl
+++ b/conform/linknamespace.pl
@@ -68,6 +68,9 @@ sub list_syms {
       next;
     }
     s/^\s*//;
+    # Architecture-specific st_other bits appear inside [] and disrupt
+    # the format of readelf output.
+    s/\[.*?\]//;
     my (@fields) = split (/\s+/, $_);
     if (@fields < 8) {
       next;