summaryrefslogtreecommitdiff
path: root/ld/testsuite
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2010-10-28 09:08:35 +0000
committerAlan Modra <amodra@gmail.com>2010-10-28 09:08:35 +0000
commit24b01a7495f590723b50c933cc409cebf2408b4d (patch)
tree30fab96c8727c468f446ae391fd01ccdbdb69ddd /ld/testsuite
parent71755fdf7bb22df3d50d51054ee9ba1c18c0dc6c (diff)
* ld-elfvers/vers.exp: Enable test for powerpc64.
* ld-elfweak/elfweak.exp: Likewise * ld-shared/shared.exp: Likewise. Xfail non-pic dso tests for ppc64. * ld-elfvers/vers1.dsym, * ld-elfvers/vers1.sym, * ld-elfvers/vers2.dsym, * ld-elfvers/vers3.dsym, * ld-elfvers/vers4.sym, * ld-elfvers/vers4a.dsym, * ld-elfvers/vers4a.sym, * ld-elfvers/vers6.dsym, * ld-elfvers/vers6.sym, * ld-elfvers/vers7a.dsym, * ld-elfvers/vers7a.sym, * ld-elfvers/vers9.dsym, * ld-elfvers/vers9.sym, * ld-elfvers/vers15.dsym, * ld-elfvers/vers15.sym, * ld-elfvers/vers16.dsym, * ld-elfvers/vers16a.dsym, * ld-elfvers/vers17.dsym, * ld-elfvers/vers18.dsym, * ld-elfvers/vers18.sym, * ld-elfvers/vers19.dsym, * ld-elfvers/vers20.dsym, * ld-elfvers/vers21.dsym, * ld-elfvers/vers21.sym, * ld-elfvers/vers22.dsym, * ld-elfvers/vers22a.dsym, * ld-elfvers/vers22a.sym, * ld-elfvers/vers22b.dsym, * ld-elfvers/vers23.dsym, * ld-elfvers/vers23a.dsym, * ld-elfvers/vers23a.sym, * ld-elfvers/vers23b.dsym, * ld-elfvers/vers25a.dsym, * ld-elfvers/vers26a.dsym, * ld-elfvers/vers27a.dsym, * ld-elfvers/vers27d.dsym, * ld-elfvers/vers27d.sym, * ld-elfvers/vers27d4.dsym, * ld-elfvers/vers28b.dsym, * ld-elfvers/vers28c.dsym, * ld-elfvers/vers29.dsym, * ld-elfvers/vers30.dsym, * ld-elfvers/vers31.dsym, * ld-elfvers/vers32a.dsym, * ld-elfvers/vers32b.dsym, * ld-elfvers/vers32c.dsym, * ld-elfweak/dso.dsym, * ld-elfweak/dsodata.dsym, * ld-elfweak/dsow.dsym, * ld-elfweak/dsowdata.dsym, * ld-elfweak/strong.sym, * ld-elfweak/strongcomm.sym, * ld-elfweak/strongdata.sym, * ld-elfweak/weak.dsym, * ld-elfweak/weakdata.dsym: Relax whitespace matching, tighten non-whitespace matching. Match powerpc64 functions in .opd section. * ld-shared/elf-offset.ld: Place powerpc64 .toc sections.
Diffstat (limited to 'ld/testsuite')
-rw-r--r--ld/testsuite/ld-elfvers/vers.exp6
-rw-r--r--ld/testsuite/ld-elfvers/vers1.dsym18
-rw-r--r--ld/testsuite/ld-elfvers/vers1.sym8
-rw-r--r--ld/testsuite/ld-elfvers/vers15.dsym10
-rw-r--r--ld/testsuite/ld-elfvers/vers15.sym6
-rw-r--r--ld/testsuite/ld-elfvers/vers16.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers16a.dsym6
-rw-r--r--ld/testsuite/ld-elfvers/vers17.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers18.dsym14
-rw-r--r--ld/testsuite/ld-elfvers/vers18.sym8
-rw-r--r--ld/testsuite/ld-elfvers/vers19.dsym2
-rw-r--r--ld/testsuite/ld-elfvers/vers2.dsym6
-rw-r--r--ld/testsuite/ld-elfvers/vers20.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers21.dsym8
-rw-r--r--ld/testsuite/ld-elfvers/vers21.sym6
-rw-r--r--ld/testsuite/ld-elfvers/vers22.dsym2
-rw-r--r--ld/testsuite/ld-elfvers/vers22a.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers22a.sym2
-rw-r--r--ld/testsuite/ld-elfvers/vers22b.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers23.dsym2
-rw-r--r--ld/testsuite/ld-elfvers/vers23a.dsym6
-rw-r--r--ld/testsuite/ld-elfvers/vers23a.sym2
-rw-r--r--ld/testsuite/ld-elfvers/vers23b.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers25a.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers26a.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers27a.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers27d.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers27d.sym2
-rw-r--r--ld/testsuite/ld-elfvers/vers27d4.dsym2
-rw-r--r--ld/testsuite/ld-elfvers/vers28b.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers28c.dsym2
-rw-r--r--ld/testsuite/ld-elfvers/vers29.dsym2
-rw-r--r--ld/testsuite/ld-elfvers/vers3.dsym2
-rw-r--r--ld/testsuite/ld-elfvers/vers30.dsym10
-rw-r--r--ld/testsuite/ld-elfvers/vers31.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers32a.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers32b.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers32c.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers4.sym2
-rw-r--r--ld/testsuite/ld-elfvers/vers4a.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers4a.sym2
-rw-r--r--ld/testsuite/ld-elfvers/vers6.dsym8
-rw-r--r--ld/testsuite/ld-elfvers/vers6.sym8
-rw-r--r--ld/testsuite/ld-elfvers/vers7a.dsym4
-rw-r--r--ld/testsuite/ld-elfvers/vers7a.sym4
-rw-r--r--ld/testsuite/ld-elfvers/vers9.dsym8
-rw-r--r--ld/testsuite/ld-elfvers/vers9.sym8
-rw-r--r--ld/testsuite/ld-elfweak/dso.dsym2
-rw-r--r--ld/testsuite/ld-elfweak/dsodata.dsym4
-rw-r--r--ld/testsuite/ld-elfweak/dsow.dsym2
-rw-r--r--ld/testsuite/ld-elfweak/dsowdata.dsym2
-rw-r--r--ld/testsuite/ld-elfweak/elfweak.exp6
-rw-r--r--ld/testsuite/ld-elfweak/strong.sym2
-rw-r--r--ld/testsuite/ld-elfweak/strongcomm.sym4
-rw-r--r--ld/testsuite/ld-elfweak/strongdata.sym4
-rw-r--r--ld/testsuite/ld-elfweak/weak.dsym2
-rw-r--r--ld/testsuite/ld-elfweak/weakdata.dsym2
-rw-r--r--ld/testsuite/ld-shared/elf-offset.ld2
-rw-r--r--ld/testsuite/ld-shared/shared.exp10
59 files changed, 142 insertions, 140 deletions
diff --git a/ld/testsuite/ld-elfvers/vers.exp b/ld/testsuite/ld-elfvers/vers.exp
index 15eafb8708..e336f6a49f 100644
--- a/ld/testsuite/ld-elfvers/vers.exp
+++ b/ld/testsuite/ld-elfvers/vers.exp
@@ -39,9 +39,9 @@ if { ![istarget hppa*64*-*-hpux*] \
&& ![istarget ia64-*-linux*] \
&& ![istarget m68k-*-linux*] \
&& ![istarget mips*-*-irix5*] \
- && ![istarget powerpc-*-elf*] \
- && ![istarget powerpc-*-linux*] \
- && ![istarget powerpc-*-sysv4*] \
+ && ![istarget powerpc*-*-elf*] \
+ && ![istarget powerpc*-*-linux*] \
+ && ![istarget powerpc*-*-sysv4*] \
&& ![istarget sparc*-*-elf] \
&& ![istarget sparc*-*-solaris2*] \
&& ![istarget sparc*-*-linux*] \
diff --git a/ld/testsuite/ld-elfvers/vers1.dsym b/ld/testsuite/ld-elfvers/vers1.dsym
index 834434bc7f..d33ab2007d 100644
--- a/ld/testsuite/ld-elfvers/vers1.dsym
+++ b/ld/testsuite/ld-elfvers/vers1.dsym
@@ -1,9 +1,9 @@
-[0]* g DO \*ABS\* [0]* VERS_1.1 VERS_1.1
-[0]* g DO \*ABS\* [0]* VERS_1.2 VERS_1.2
-[0]* g DO \*ABS\* [0]* VERS_2.0 VERS_2.0
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* \(Base\) (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* \(VERS_1.1\) (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* \(VERS_1.2\) (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_2.0 (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* g DO (.s?data|\*ABS\*) [0-9a-f]* VERS_2.0 show_bar1
-[0-9a-f]* g DO (.s?data|\*ABS\*) [0-9a-f]* VERS_2.0 show_bar2
+0+ g +DO \*ABS\* 0+ +VERS_1\.1 +VERS_1\.1
+0+ g +DO \*ABS\* 0+ +VERS_1\.2 +VERS_1\.2
+0+ g +DO \*ABS\* 0+ +VERS_2\.0 +VERS_2\.0
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ \(Base\) +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ \(VERS_1\.1\) +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ \(VERS_1\.2\) +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_2\.0 +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ g +DO (\.s?data|\*ABS\*) [0-9a-f]+ +VERS_2\.0 +show_bar1
+[0-9a-f]+ g +DO (\.s?data|\*ABS\*) [0-9a-f]+ +VERS_2\.0 +show_bar2
diff --git a/ld/testsuite/ld-elfvers/vers1.sym b/ld/testsuite/ld-elfvers/vers1.sym
index 70ff85571f..ed589e83d7 100644
--- a/ld/testsuite/ld-elfvers/vers1.sym
+++ b/ld/testsuite/ld-elfvers/vers1.sym
@@ -1,4 +1,4 @@
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@VERS_1.1
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@VERS_1.2
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@@VERS_2.0
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@VERS_1\.1
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@VERS_1\.2
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@@VERS_2\.0
diff --git a/ld/testsuite/ld-elfvers/vers15.dsym b/ld/testsuite/ld-elfvers/vers15.dsym
index 1f5e15c4af..fc4c9962ea 100644
--- a/ld/testsuite/ld-elfvers/vers15.dsym
+++ b/ld/testsuite/ld-elfvers/vers15.dsym
@@ -1,5 +1,5 @@
-[0]* g DO \*ABS\* [0]* VERS_1.1 VERS_1.1
-[0]* g DO \*ABS\* [0]* VERS_1.2 VERS_1.2
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* \(Base\) (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* \(VERS_1.1\) (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_1.2 (0x[0-9a-f][0-9a-f] )?show_foo
+0+ g +DO \*ABS\* 0+ +VERS_1\.1 +VERS_1\.1
+0+ g +DO \*ABS\* 0+ +VERS_1\.2 +VERS_1\.2
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ \(Base\) +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ \(VERS_1\.1\) +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_1\.2 +(0x[0-9a-f]+ )?show_foo
diff --git a/ld/testsuite/ld-elfvers/vers15.sym b/ld/testsuite/ld-elfvers/vers15.sym
index 87bab62c9e..ba9f83e191 100644
--- a/ld/testsuite/ld-elfvers/vers15.sym
+++ b/ld/testsuite/ld-elfvers/vers15.sym
@@ -1,3 +1,3 @@
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@VERS_1.1
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@@VERS_1.2
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@VERS_1\.1
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@@VERS_1\.2
diff --git a/ld/testsuite/ld-elfvers/vers16.dsym b/ld/testsuite/ld-elfvers/vers16.dsym
index 6c424c3173..6733ece6de 100644
--- a/ld/testsuite/ld-elfvers/vers16.dsym
+++ b/ld/testsuite/ld-elfvers/vers16.dsym
@@ -1,2 +1,2 @@
-[0-9a-f]* g DF (\.text|\*ABS\*) [0-9a-f]*( Base )? (0x[0-9a-f][0-9a-f] )?show_bar
-[0-9a-f]* DF \*UND\* [0-9a-f]*( )? (0x[0-9a-f][0-9a-f] )?show_foo
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+( +Base +)? (0x[0-9a-f]+ )?show_bar
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +(0x[0-9a-f]+ )?show_foo
diff --git a/ld/testsuite/ld-elfvers/vers16a.dsym b/ld/testsuite/ld-elfvers/vers16a.dsym
index 058df47ee8..aaca9f5e33 100644
--- a/ld/testsuite/ld-elfvers/vers16a.dsym
+++ b/ld/testsuite/ld-elfvers/vers16a.dsym
@@ -1,3 +1,3 @@
-[0-9a-f]* g DO (\.text|\*ABS\*) [0-9a-f]* VERS_1\.1 VERS_1\.1
-[0-9a-f]* g DF (\.text|\*ABS\*) [0-9a-f]* VERS_1\.1 (0x[0-9a-f][0-9a-f] )?show_bar
-[0-9a-f]* g DF (\.text|\*ABS\*) [0-9a-f]* Base (0x[0-9a-f][0-9a-f] )?show_foo
+[0-9a-f]+ g +DO (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_1\.1 +VERS_1\.1
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_1\.1 +(0x[0-9a-f]+ )?show_bar
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +Base +(0x[0-9a-f]+ )?show_foo
diff --git a/ld/testsuite/ld-elfvers/vers17.dsym b/ld/testsuite/ld-elfvers/vers17.dsym
index 8decc0afd7..98106593c9 100644
--- a/ld/testsuite/ld-elfvers/vers17.dsym
+++ b/ld/testsuite/ld-elfvers/vers17.dsym
@@ -1,2 +1,2 @@
-[0]* g DO \*ABS\* [0]* VERS_2.0 VERS_2.0
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_2.0 (0x[0-9a-f][0-9a-f] )?show_foo
+0+ g +DO \*ABS\* 0+ +VERS_2\.0 +VERS_2\.0
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_2\.0 +(0x[0-9a-f]+ )?show_foo
diff --git a/ld/testsuite/ld-elfvers/vers18.dsym b/ld/testsuite/ld-elfvers/vers18.dsym
index c60237a310..49bd7b2b35 100644
--- a/ld/testsuite/ld-elfvers/vers18.dsym
+++ b/ld/testsuite/ld-elfvers/vers18.dsym
@@ -1,7 +1,7 @@
-[0]* g DO \*ABS\* [0]* VERS_1.1 VERS_1.1
-[0]* g DO \*ABS\* [0]* VERS_1.2 VERS_1.2
-[0]* g DO \*ABS\* [0]* VERS_2.0 VERS_2.0
-[0-9a-f]* w DF (.text|\*ABS\*) [0-9a-f]* \(Base\) (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* w DF (.text|\*ABS\*) [0-9a-f]* \(VERS_1.1\) (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* w DF (.text|\*ABS\*) [0-9a-f]* \(VERS_1.2\) (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* w DF (.text|\*ABS\*) [0-9a-f]* VERS_2.0 (0x[0-9a-f][0-9a-f] )?show_foo
+0+ g +DO \*ABS\* 0+ +VERS_1\.1 +VERS_1\.1
+0+ g +DO \*ABS\* 0+ +VERS_1\.2 +VERS_1\.2
+0+ g +DO \*ABS\* 0+ +VERS_2\.0 +VERS_2\.0
+[0-9a-f]+ +w +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ \(Base\) +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ +w +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ \(VERS_1\.1\) +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ +w +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ \(VERS_1\.2\) +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ +w +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_2\.0 +(0x[0-9a-f]+ )?show_foo
diff --git a/ld/testsuite/ld-elfvers/vers18.sym b/ld/testsuite/ld-elfvers/vers18.sym
index f9cefdfa83..bcc88820da 100644
--- a/ld/testsuite/ld-elfvers/vers18.sym
+++ b/ld/testsuite/ld-elfvers/vers18.sym
@@ -1,4 +1,4 @@
-[0-9a-f]* w F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@
-[0-9a-f]* w F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@VERS_1.1
-[0-9a-f]* w F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@VERS_1.2
-[0-9a-f]* w F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo@@VERS_2.0
+[0-9a-f]+ +w +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@
+[0-9a-f]+ +w +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@VERS_1\.1
+[0-9a-f]+ +w +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@VERS_1\.2
+[0-9a-f]+ +w +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_foo@@VERS_2\.0
diff --git a/ld/testsuite/ld-elfvers/vers19.dsym b/ld/testsuite/ld-elfvers/vers19.dsym
index c9c2642389..7396deeca5 100644
--- a/ld/testsuite/ld-elfvers/vers19.dsym
+++ b/ld/testsuite/ld-elfvers/vers19.dsym
@@ -1 +1 @@
-[0-9a-f]* DF \*UND\* [0-9a-f]* VERS_2.0 (0x[0-9a-f][0-9a-f] )?show_foo
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +VERS_2\.0 +(0x[0-9a-f]+ )?show_foo
diff --git a/ld/testsuite/ld-elfvers/vers2.dsym b/ld/testsuite/ld-elfvers/vers2.dsym
index 99985c237a..63f15db45f 100644
--- a/ld/testsuite/ld-elfvers/vers2.dsym
+++ b/ld/testsuite/ld-elfvers/vers2.dsym
@@ -1,3 +1,3 @@
-[0-9a-f]* DF \*UND\* [0-9a-f]* VERS_2.0 (0x[0-9a-f][0-9a-f] )?show_foo
-[0]* g DO \*ABS\* [0]* VERS_XXX_1.1 VERS_XXX_1.1
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_XXX_1.1 (0x[0-9a-f][0-9a-f] )?show_xyzzy
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +VERS_2\.0 +(0x[0-9a-f]+ )?show_foo
+0+ g +DO \*ABS\* 0+ +VERS_XXX_1\.1 VERS_XXX_1\.1
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_XXX_1\.1 (0x[0-9a-f]+ )?show_xyzzy
diff --git a/ld/testsuite/ld-elfvers/vers20.dsym b/ld/testsuite/ld-elfvers/vers20.dsym
index 70aa05ed4f..559170c1b0 100644
--- a/ld/testsuite/ld-elfvers/vers20.dsym
+++ b/ld/testsuite/ld-elfvers/vers20.dsym
@@ -1,2 +1,2 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS_1.1[ ]+VERS_1.1
-[0-9a-f]*[ ]+g[ ]+DO[ ]+.(s|)bss[ ]+[0-9a-f]*[ ]+VERS_1.1[ ]+show_foo
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS_1\.1[ ]+VERS_1\.1
+[0-9a-f]+[ ]+g[ ]+DO[ ]+\.s?bss[ ]+[0-9a-f]+[ ]+VERS_1\.1[ ]+show_foo
diff --git a/ld/testsuite/ld-elfvers/vers21.dsym b/ld/testsuite/ld-elfvers/vers21.dsym
index 2096b5d988..4cb21882c2 100644
--- a/ld/testsuite/ld-elfvers/vers21.dsym
+++ b/ld/testsuite/ld-elfvers/vers21.dsym
@@ -1,4 +1,4 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS.0[ ]+VERS.0
-[0-9a-f]*[ ]+w[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+\(VERS.0\)[ ]+(0x[0-9a-f]*|)[ ]*bar
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+\(VERS.0\)[ ]+(0x[0-9a-f]*|)[ ]*foo
-[0-9a-f]*[ ]+g[ ]+DO[ ]+.s?data[ ]+[0-9a-f]*[ ]+\(VERS.0\)[ ]+foobar
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS\.0[ ]+VERS\.0
+[0-9a-f]+[ ]+w[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+\(VERS\.0\)[ ]+(0x[0-9a-f]+|)[ ]*bar
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+\(VERS\.0\)[ ]+(0x[0-9a-f]+|)[ ]*foo
+[0-9a-f]+[ ]+g[ ]+DO[ ]+\.s?data[ ]+[0-9a-f]+[ ]+\(VERS\.0\)[ ]+foobar
diff --git a/ld/testsuite/ld-elfvers/vers21.sym b/ld/testsuite/ld-elfvers/vers21.sym
index bcb635981e..e7de74f487 100644
--- a/ld/testsuite/ld-elfvers/vers21.sym
+++ b/ld/testsuite/ld-elfvers/vers21.sym
@@ -1,3 +1,3 @@
-[0-9a-f]*[ ]+g[ ]+O[ ]+.s?data[ ]+[0-9a-f]* (0x[0-9a-f][0-9a-f] )?foobar@VERS.0
-[0-9a-f]*[ ]+w[ ]+F[ ]+.text[ ]+[0-9a-f]* (0x[0-9a-f][0-9a-f] )?bar@VERS.0
-[0-9a-f]*[ ]+g[ ]+F[ ]+.text[ ]+[0-9a-f]* (0x[0-9a-f][0-9a-f] )?foo@VERS.0
+[0-9a-f]+[ ]+g[ ]+O[ ]+\.s?data[ ]+[0-9a-f]+ (0x[0-9a-f]+ )?foobar@VERS\.0
+[0-9a-f]+[ ]+w[ ]+F[ ]+\.(text|opd)[ ]+[0-9a-f]+ (0x[0-9a-f]+ )?bar@VERS\.0
+[0-9a-f]+[ ]+g[ ]+F[ ]+\.(text|opd)[ ]+[0-9a-f]+ (0x[0-9a-f]+ )?foo@VERS\.0
diff --git a/ld/testsuite/ld-elfvers/vers22.dsym b/ld/testsuite/ld-elfvers/vers22.dsym
index bef7c565be..5dfa465b90 100644
--- a/ld/testsuite/ld-elfvers/vers22.dsym
+++ b/ld/testsuite/ld-elfvers/vers22.dsym
@@ -1 +1 @@
-[0-9a-f]* DF \*UND\* [0-9a-f]* VERS.0 (0x[0-9a-f][0-9a-f] )?bar
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +VERS\.0 +(0x[0-9a-f]+ )?bar
diff --git a/ld/testsuite/ld-elfvers/vers22a.dsym b/ld/testsuite/ld-elfvers/vers22a.dsym
index b710e715ff..af06123386 100644
--- a/ld/testsuite/ld-elfvers/vers22a.dsym
+++ b/ld/testsuite/ld-elfvers/vers22a.dsym
@@ -1,2 +1,2 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS.0[ ]+VERS.0
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+\(VERS.0\)[ ]+(0x[0-9a-f]*|)[ ]*bar
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS\.0[ ]+VERS\.0
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+\(VERS\.0\)[ ]+(0x[0-9a-f]+ )?bar
diff --git a/ld/testsuite/ld-elfvers/vers22a.sym b/ld/testsuite/ld-elfvers/vers22a.sym
index 39fd10a64b..ff07708753 100644
--- a/ld/testsuite/ld-elfvers/vers22a.sym
+++ b/ld/testsuite/ld-elfvers/vers22a.sym
@@ -1 +1 @@
-[0-9a-f]*[ ]+g[ ]+F[ ]+.text[ ]+[0-9a-f]* (0x[0-9a-f][0-9a-f] )?bar@VERS.0
+[0-9a-f]+[ ]+g[ ]+F[ ]+\.(text|opd)[ ]+[0-9a-f]+ (0x[0-9a-f]+ )?bar@VERS.0
diff --git a/ld/testsuite/ld-elfvers/vers22b.dsym b/ld/testsuite/ld-elfvers/vers22b.dsym
index 25d78fa232..88c31b303f 100644
--- a/ld/testsuite/ld-elfvers/vers22b.dsym
+++ b/ld/testsuite/ld-elfvers/vers22b.dsym
@@ -1,2 +1,2 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS.0[ ]+VERS.0
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+VERS.0[ ]+(0x[0-9a-f]*|)[ ]*bar
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS\.0[ ]+VERS\.0
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+VERS\.0[ ]+(0x[0-9a-f]+ )?bar
diff --git a/ld/testsuite/ld-elfvers/vers23.dsym b/ld/testsuite/ld-elfvers/vers23.dsym
index d800afa47a..8c85a4ae9f 100644
--- a/ld/testsuite/ld-elfvers/vers23.dsym
+++ b/ld/testsuite/ld-elfvers/vers23.dsym
@@ -1 +1 @@
-[0-9a-f]* DF \*UND\* [0-9a-f]* VERS.0 (0x[0-9a-f][0-9a-f] )?foo
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +VERS\.0 +(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers23a.dsym b/ld/testsuite/ld-elfvers/vers23a.dsym
index c96aa2fc14..4450665ff9 100644
--- a/ld/testsuite/ld-elfvers/vers23a.dsym
+++ b/ld/testsuite/ld-elfvers/vers23a.dsym
@@ -1,3 +1,3 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS.0[ ]+VERS.0
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+\(VERS.0\)[ ]+(0x[0-9a-f]*|)[ ]*bar
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+VERS.0[ ]+(0x[0-9a-f]*|)[ ]*foo
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS\.0[ ]+VERS\.0
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+\(VERS\.0\)[ ]+(0x[0-9a-f]+ )?bar
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+VERS\.0[ ]+(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers23a.sym b/ld/testsuite/ld-elfvers/vers23a.sym
index 39fd10a64b..ff07708753 100644
--- a/ld/testsuite/ld-elfvers/vers23a.sym
+++ b/ld/testsuite/ld-elfvers/vers23a.sym
@@ -1 +1 @@
-[0-9a-f]*[ ]+g[ ]+F[ ]+.text[ ]+[0-9a-f]* (0x[0-9a-f][0-9a-f] )?bar@VERS.0
+[0-9a-f]+[ ]+g[ ]+F[ ]+\.(text|opd)[ ]+[0-9a-f]+ (0x[0-9a-f]+ )?bar@VERS.0
diff --git a/ld/testsuite/ld-elfvers/vers23b.dsym b/ld/testsuite/ld-elfvers/vers23b.dsym
index 25d78fa232..88c31b303f 100644
--- a/ld/testsuite/ld-elfvers/vers23b.dsym
+++ b/ld/testsuite/ld-elfvers/vers23b.dsym
@@ -1,2 +1,2 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS.0[ ]+VERS.0
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+VERS.0[ ]+(0x[0-9a-f]*|)[ ]*bar
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS\.0[ ]+VERS\.0
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+VERS\.0[ ]+(0x[0-9a-f]+ )?bar
diff --git a/ld/testsuite/ld-elfvers/vers25a.dsym b/ld/testsuite/ld-elfvers/vers25a.dsym
index fcf6384dfd..6e6573acac 100644
--- a/ld/testsuite/ld-elfvers/vers25a.dsym
+++ b/ld/testsuite/ld-elfvers/vers25a.dsym
@@ -1,2 +1,2 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS.0[ ]+VERS.0
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+VERS.0[ ]+(0x[0-9a-f]*|)[ ]*foo
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS\.0[ ]+VERS\.0
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+VERS\.0[ ]+(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers26a.dsym b/ld/testsuite/ld-elfvers/vers26a.dsym
index fcf6384dfd..6e6573acac 100644
--- a/ld/testsuite/ld-elfvers/vers26a.dsym
+++ b/ld/testsuite/ld-elfvers/vers26a.dsym
@@ -1,2 +1,2 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS.0[ ]+VERS.0
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+VERS.0[ ]+(0x[0-9a-f]*|)[ ]*foo
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS\.0[ ]+VERS\.0
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+VERS\.0[ ]+(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers27a.dsym b/ld/testsuite/ld-elfvers/vers27a.dsym
index fcf6384dfd..6e6573acac 100644
--- a/ld/testsuite/ld-elfvers/vers27a.dsym
+++ b/ld/testsuite/ld-elfvers/vers27a.dsym
@@ -1,2 +1,2 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS.0[ ]+VERS.0
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+VERS.0[ ]+(0x[0-9a-f]*|)[ ]*foo
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS\.0[ ]+VERS\.0
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+VERS\.0[ ]+(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers27d.dsym b/ld/testsuite/ld-elfvers/vers27d.dsym
index 9813d95d1c..58b56e8522 100644
--- a/ld/testsuite/ld-elfvers/vers27d.dsym
+++ b/ld/testsuite/ld-elfvers/vers27d.dsym
@@ -1,2 +1,2 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS.0[ ]+VERS.0
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+\(VERS.0\)[ ]+(0x[0-9a-f]*|)[ ]*foo
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS\.0[ ]+VERS\.0
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+\(VERS\.0\)[ ]+(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers27d.sym b/ld/testsuite/ld-elfvers/vers27d.sym
index 2069993075..d4946f5e20 100644
--- a/ld/testsuite/ld-elfvers/vers27d.sym
+++ b/ld/testsuite/ld-elfvers/vers27d.sym
@@ -1 +1 @@
-[0-9a-f]*[ ]+g[ ]+F[ ]+.text[ ]+[0-9a-f]* (0x[0-9a-f][0-9a-f] )?foo@VERS.0
+[0-9a-f]+[ ]+g[ ]+F[ ]+\.(text|opd)[ ]+[0-9a-f]+ (0x[0-9a-f]+ )?foo@VERS\.0
diff --git a/ld/testsuite/ld-elfvers/vers27d4.dsym b/ld/testsuite/ld-elfvers/vers27d4.dsym
index d800afa47a..8c85a4ae9f 100644
--- a/ld/testsuite/ld-elfvers/vers27d4.dsym
+++ b/ld/testsuite/ld-elfvers/vers27d4.dsym
@@ -1 +1 @@
-[0-9a-f]* DF \*UND\* [0-9a-f]* VERS.0 (0x[0-9a-f][0-9a-f] )?foo
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +VERS\.0 +(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers28b.dsym b/ld/testsuite/ld-elfvers/vers28b.dsym
index e174c91e8b..750ee8809c 100644
--- a/ld/testsuite/ld-elfvers/vers28b.dsym
+++ b/ld/testsuite/ld-elfvers/vers28b.dsym
@@ -1,2 +1,2 @@
-[0]*[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+[0]*[ ]+VERS.0[ ]+VERS.0
-[0-9a-f]*[ ]+w[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+VERS.0[ ]+(0x[0-9a-f]*|)[ ]*foo
+0+[ ]+g[ ]+DO[ ]+\*ABS\*[ ]+0+[ ]+VERS\.0[ ]+VERS\.0
+[0-9a-f]+[ ]+w[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+VERS\.0[ ]+(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers28c.dsym b/ld/testsuite/ld-elfvers/vers28c.dsym
index 37a1c4374e..99f6d881f8 100644
--- a/ld/testsuite/ld-elfvers/vers28c.dsym
+++ b/ld/testsuite/ld-elfvers/vers28c.dsym
@@ -1 +1 @@
-[0-9a-f]*[ ]+DF[ ]+\*UND\*[ ]+[0-9a-f]*[ ]+VERS.0[ ]+(0x[0-9a-f]*|)[ ]*foo
+[0-9a-f]+[ ]+DF[ ]+\*UND\*[ ]+[0-9a-f]+[ ]+VERS\.0[ ]+(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers29.dsym b/ld/testsuite/ld-elfvers/vers29.dsym
index 2e7bbdef9d..ed8a230de0 100644
--- a/ld/testsuite/ld-elfvers/vers29.dsym
+++ b/ld/testsuite/ld-elfvers/vers29.dsym
@@ -1 +1 @@
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+vers29.so[ ]+(0x[0-9a-f]*|)[ ]*show
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+vers29\.so[ ]+(0x[0-9a-f]+ )?show
diff --git a/ld/testsuite/ld-elfvers/vers3.dsym b/ld/testsuite/ld-elfvers/vers3.dsym
index c9c2642389..7396deeca5 100644
--- a/ld/testsuite/ld-elfvers/vers3.dsym
+++ b/ld/testsuite/ld-elfvers/vers3.dsym
@@ -1 +1 @@
-[0-9a-f]* DF \*UND\* [0-9a-f]* VERS_2.0 (0x[0-9a-f][0-9a-f] )?show_foo
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +VERS_2\.0 +(0x[0-9a-f]+ )?show_foo
diff --git a/ld/testsuite/ld-elfvers/vers30.dsym b/ld/testsuite/ld-elfvers/vers30.dsym
index 1f358d4396..ddb21eb38b 100644
--- a/ld/testsuite/ld-elfvers/vers30.dsym
+++ b/ld/testsuite/ld-elfvers/vers30.dsym
@@ -1,5 +1,5 @@
-[0]* g DO \*ABS\* [0]* VERS_30.0 VERS_30.0
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_30.0 global
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_30.0 foo
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_30.0 info
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_30.0 extern
+0+ g DO \*ABS\* 0+ VERS_30\.0 VERS_30\.0
+[0-9a-f]+ g DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ VERS_30\.0 global
+[0-9a-f]+ g DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ VERS_30\.0 foo
+[0-9a-f]+ g DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ VERS_30\.0 info
+[0-9a-f]+ g DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ VERS_30\.0 extern
diff --git a/ld/testsuite/ld-elfvers/vers31.dsym b/ld/testsuite/ld-elfvers/vers31.dsym
index 8924ed8e6d..72dec06aff 100644
--- a/ld/testsuite/ld-elfvers/vers31.dsym
+++ b/ld/testsuite/ld-elfvers/vers31.dsym
@@ -1,2 +1,2 @@
-[0]* g DO \*ABS\* [0]* VERS_31.0 VERS_31.0
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_31.0 _Z1fIA3_icEvPT_T0
+0+ g +DO \*ABS\* 0+ +VERS_31\.0 +VERS_31\.0
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_31\.0 +_Z1fIA3_icEvPT_T0
diff --git a/ld/testsuite/ld-elfvers/vers32a.dsym b/ld/testsuite/ld-elfvers/vers32a.dsym
index 14f15d4ef8..47d1b06bff 100644
--- a/ld/testsuite/ld-elfvers/vers32a.dsym
+++ b/ld/testsuite/ld-elfvers/vers32a.dsym
@@ -1,2 +1,2 @@
-[0]* g DO \*ABS\* [0]* VERS_1 VERS_1
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_1 (0x[0-9a-f][0-9a-f] )?foo
+0+ g +DO \*ABS\* 0+ +VERS_1 +VERS_1
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_1 +(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers32b.dsym b/ld/testsuite/ld-elfvers/vers32b.dsym
index 8cc620cca8..88b3474472 100644
--- a/ld/testsuite/ld-elfvers/vers32b.dsym
+++ b/ld/testsuite/ld-elfvers/vers32b.dsym
@@ -1,2 +1,2 @@
-[0-9a-f]* g D \*ABS\* [0-9a-f]* VERS_1 (0x[0-9a-f][0-9a-f] )?foo
-[0]* g DO \*ABS\* [0]* VERS_1 VERS_1
+[0-9a-f]+ g +D +\*ABS\* [0-9a-f]+ +VERS_1 +(0x[0-9a-f]+ )?foo
+0+ g +DO \*ABS\* 0+ +VERS_1 +VERS_1
diff --git a/ld/testsuite/ld-elfvers/vers32c.dsym b/ld/testsuite/ld-elfvers/vers32c.dsym
index 70c7428c9c..6363ae6742 100644
--- a/ld/testsuite/ld-elfvers/vers32c.dsym
+++ b/ld/testsuite/ld-elfvers/vers32c.dsym
@@ -1,2 +1,2 @@
-[0-9a-f]* g DF \*ABS\* [0-9a-f]* VERS_1 (0x[0-9a-f][0-9a-f] )?foo
-[0]* g DO \*ABS\* [0]* VERS_1 VERS_1
+[0-9a-f]+ g +DF \*ABS\* [0-9a-f]+ +VERS_1 +(0x[0-9a-f]+ )?foo
+0+ g +DO \*ABS\* 0+ +VERS_1 +VERS_1
diff --git a/ld/testsuite/ld-elfvers/vers4.sym b/ld/testsuite/ld-elfvers/vers4.sym
index 7449446e80..395e69910b 100644
--- a/ld/testsuite/ld-elfvers/vers4.sym
+++ b/ld/testsuite/ld-elfvers/vers4.sym
@@ -1 +1 @@
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?foo@@VERS_2.0
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?foo@@VERS_2\.0
diff --git a/ld/testsuite/ld-elfvers/vers4a.dsym b/ld/testsuite/ld-elfvers/vers4a.dsym
index f7f9fdacfd..a7efb0aef6 100644
--- a/ld/testsuite/ld-elfvers/vers4a.dsym
+++ b/ld/testsuite/ld-elfvers/vers4a.dsym
@@ -1,2 +1,2 @@
-[0]* g DO \*ABS\* [0]* VERS_2.0 VERS_2.0
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_2.0 (0x[0-9a-f][0-9a-f] )?foo
+0+ g DO \*ABS\* 0+ VERS_2\.0 VERS_2\.0
+[0-9a-f]+ g DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ VERS_2\.0 (0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers4a.sym b/ld/testsuite/ld-elfvers/vers4a.sym
index 7449446e80..395e69910b 100644
--- a/ld/testsuite/ld-elfvers/vers4a.sym
+++ b/ld/testsuite/ld-elfvers/vers4a.sym
@@ -1 +1 @@
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?foo@@VERS_2.0
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?foo@@VERS_2\.0
diff --git a/ld/testsuite/ld-elfvers/vers6.dsym b/ld/testsuite/ld-elfvers/vers6.dsym
index 7e851d457a..79e9061a92 100644
--- a/ld/testsuite/ld-elfvers/vers6.dsym
+++ b/ld/testsuite/ld-elfvers/vers6.dsym
@@ -1,4 +1,4 @@
-[0-9a-f]* DF \*UND\* [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* DF \*UND\* [0-9a-f]* VERS_2.0 (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* DF \*UND\* [0-9a-f]* VERS_1.2 (0x[0-9a-f][0-9a-f] )?show_foo
-[0-9a-f]* DF \*UND\* [0-9a-f]* VERS_1.1 (0x[0-9a-f][0-9a-f] )?show_foo
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +VERS_2.0 +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +VERS_1.2 +(0x[0-9a-f]+ )?show_foo
+[0-9a-f]+ +DF \*UND\* [0-9a-f]+ +VERS_1.1 +(0x[0-9a-f]+ )?show_foo
diff --git a/ld/testsuite/ld-elfvers/vers6.sym b/ld/testsuite/ld-elfvers/vers6.sym
index d7b5cc75bb..801f7b3618 100644
--- a/ld/testsuite/ld-elfvers/vers6.sym
+++ b/ld/testsuite/ld-elfvers/vers6.sym
@@ -1,4 +1,4 @@
-[0]* *F? *\*UND\* [0]* show_foo@
-[0]* *F? *\*UND\* [0]* show_foo@VERS_1.1
-[0]* *F? *\*UND\* [0]* show_foo@VERS_1.2
-[0]* *F? *\*UND\* [0]* show_foo@VERS_2.0
+0+ *F? *\*UND\* 0+ show_foo@
+0+ *F? *\*UND\* 0+ show_foo@VERS_1\.1
+0+ *F? *\*UND\* 0+ show_foo@VERS_1\.2
+0+ *F? *\*UND\* 0+ show_foo@VERS_2\.0
diff --git a/ld/testsuite/ld-elfvers/vers7a.dsym b/ld/testsuite/ld-elfvers/vers7a.dsym
index 06696c7535..8434925f67 100644
--- a/ld/testsuite/ld-elfvers/vers7a.dsym
+++ b/ld/testsuite/ld-elfvers/vers7a.dsym
@@ -1,2 +1,2 @@
-[0]* g DO \*ABS\* [0]* VERS_1 VERS_1
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_1 (0x[0-9a-f][0-9a-f] )?show_b
+0+ g +DO \*ABS\* 0+ +VERS_1 +VERS_1
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_1 +(0x[0-9a-f]+ )?show_b
diff --git a/ld/testsuite/ld-elfvers/vers7a.sym b/ld/testsuite/ld-elfvers/vers7a.sym
index b99bd61cc3..94d9312bd4 100644
--- a/ld/testsuite/ld-elfvers/vers7a.sym
+++ b/ld/testsuite/ld-elfvers/vers7a.sym
@@ -1,2 +1,2 @@
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?hide_a@@VERS_1
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?show_b@@VERS_1
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?hide_a@@VERS_1
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?show_b@@VERS_1
diff --git a/ld/testsuite/ld-elfvers/vers9.dsym b/ld/testsuite/ld-elfvers/vers9.dsym
index 9793002584..5443e67dd0 100644
--- a/ld/testsuite/ld-elfvers/vers9.dsym
+++ b/ld/testsuite/ld-elfvers/vers9.dsym
@@ -1,4 +1,4 @@
-[0]* g DO \*ABS\* [0]* VERS_1.1 VERS_1.1
-[0]* g DO \*ABS\* [0]* VERS_1.2 VERS_1.2
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* \(VERS_1.1\) (0x[0-9a-f][0-9a-f] )?foo
-[0-9a-f]* g DF (.text|\*ABS\*) [0-9a-f]* VERS_1.2 (0x[0-9a-f][0-9a-f] )?foo
+0+ g +DO \*ABS\* 0+ +VERS_1\.1 +VERS_1\.1
+0+ g +DO \*ABS\* 0+ +VERS_1\.2 +VERS_1\.2
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ \(VERS_1\.1\) +(0x[0-9a-f]+ )?foo
+[0-9a-f]+ g +DF (\.text|\.opd|\*ABS\*) [0-9a-f]+ +VERS_1\.2 +(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfvers/vers9.sym b/ld/testsuite/ld-elfvers/vers9.sym
index 8231516bfc..6d6585fd6c 100644
--- a/ld/testsuite/ld-elfvers/vers9.sym
+++ b/ld/testsuite/ld-elfvers/vers9.sym
@@ -1,4 +1,4 @@
-[0]* *F? *\*UND\* [0]* foo@VERS_1.2
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?foo@
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?foo@VERS_1.1
-[0-9a-f]* g F .text [0-9a-f]* (0x[0-9a-f][0-9a-f] )?foo@@VERS_1.2
+0+ *F? *\*UND\* 0+ foo@VERS_1\.2
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?foo@
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?foo@VERS_1\.1
+[0-9a-f]+ g +F \.(text|opd) [0-9a-f]+ (0x[0-9a-f]+ )?foo@@VERS_1\.2
diff --git a/ld/testsuite/ld-elfweak/dso.dsym b/ld/testsuite/ld-elfweak/dso.dsym
index be1b186507..f69c29b6c9 100644
--- a/ld/testsuite/ld-elfweak/dso.dsym
+++ b/ld/testsuite/ld-elfweak/dso.dsym
@@ -1 +1 @@
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+(Base[ ]+|[ ]*)(0x[0-9a-f]+|)[ ]*foo
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+(Base[ ]+|[ ]*)(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfweak/dsodata.dsym b/ld/testsuite/ld-elfweak/dsodata.dsym
index 2b1f9343f0..d4a09cc21d 100644
--- a/ld/testsuite/ld-elfweak/dsodata.dsym
+++ b/ld/testsuite/ld-elfweak/dsodata.dsym
@@ -1,2 +1,2 @@
-[0-9a-f]*[ ]+g[ ]+DO[ ]+.(s|)(data|bss)[ ]+[0-9a-f]*[ ]+(Base[ ]+|[ ]*)deallocate_foo
-[0-9a-f]*[ ]+g[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+(Base[ ]+|[ ]*)(0x[0-9a-f]*|)[ ]*foo
+[0-9a-f]+[ ]+g[ ]+DO[ ]+\.s?(data|bss)[ ]+[0-9a-f]+[ ]+(Base[ ]+|[ ]*)deallocate_foo
+[0-9a-f]+[ ]+g[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+(Base[ ]+|[ ]*)(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfweak/dsow.dsym b/ld/testsuite/ld-elfweak/dsow.dsym
index cc36c6f313..e3aa87ae22 100644
--- a/ld/testsuite/ld-elfweak/dsow.dsym
+++ b/ld/testsuite/ld-elfweak/dsow.dsym
@@ -1 +1 @@
-[0-9a-f]*[ ]+w[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+(Base[ ]+|[ ]*)(0x[0-9a-f]+|)[ ]*foo
+[0-9a-f]+[ ]+w[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+(Base[ ]+|[ ]*)(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfweak/dsowdata.dsym b/ld/testsuite/ld-elfweak/dsowdata.dsym
index e0f579ae12..5fdc6940b6 100644
--- a/ld/testsuite/ld-elfweak/dsowdata.dsym
+++ b/ld/testsuite/ld-elfweak/dsowdata.dsym
@@ -1 +1 @@
-[0-9a-f]*[ ]+w[ ]+DO[ ]+.(s|)data[ ]+[0-9a-f]*[ ]+(Base[ ]+|[ ]*)deallocate_foo
+[0-9a-f]+[ ]+w[ ]+DO[ ]+\.s?data[ ]+[0-9a-f]+[ ]+(Base[ ]+|[ ]*)deallocate_foo
diff --git a/ld/testsuite/ld-elfweak/elfweak.exp b/ld/testsuite/ld-elfweak/elfweak.exp
index 4953b91658..cac613b725 100644
--- a/ld/testsuite/ld-elfweak/elfweak.exp
+++ b/ld/testsuite/ld-elfweak/elfweak.exp
@@ -41,9 +41,9 @@ if { ![istarget alpha*-*-linux*] \
&& ![istarget m68k-*-linux*] \
&& ![istarget mips*-*-irix5*] \
&& ![istarget mips*-*-linux*] \
- && ![istarget powerpc-*-elf*] \
- && ![istarget powerpc-*-linux*] \
- && ![istarget powerpc-*-sysv4*] \
+ && ![istarget powerpc*-*-elf*] \
+ && ![istarget powerpc*-*-linux*] \
+ && ![istarget powerpc*-*-sysv4*] \
&& ![istarget sh\[34\]*-*-linux*] \
&& ![istarget sparc*-*-elf] \
&& ![istarget sparc*-*-solaris2*] \
diff --git a/ld/testsuite/ld-elfweak/strong.sym b/ld/testsuite/ld-elfweak/strong.sym
index 85e06f7723..531d35876f 100644
--- a/ld/testsuite/ld-elfweak/strong.sym
+++ b/ld/testsuite/ld-elfweak/strong.sym
@@ -1 +1 @@
-[0-9a-f]*[ ]+g[ ]+F[ ]+.text[ ]+[0-9a-f]*[ ]+(0x[0-9a-f]*|)[ ]*foo
+[0-9a-f]+[ ]+g[ ]+F[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfweak/strongcomm.sym b/ld/testsuite/ld-elfweak/strongcomm.sym
index c0ae401498..2a8c6cd287 100644
--- a/ld/testsuite/ld-elfweak/strongcomm.sym
+++ b/ld/testsuite/ld-elfweak/strongcomm.sym
@@ -1,2 +1,2 @@
-[0-9a-f]*[ ]+g[ ]+O[ ]+.(s|)bss[ ]+[0-9a-f]*[ ]+deallocate_foo
-[0-9a-f]*[ ]+g[ ]+F[ ]+.text[ ]+[0-9a-f]*[ ]+(0x[0-9a-f]*|)[ ]*foo
+[0-9a-f]+[ ]+g[ ]+O[ ]+\.s?bss[ ]+[0-9a-f]+[ ]+deallocate_foo
+[0-9a-f]+[ ]+g[ ]+F[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfweak/strongdata.sym b/ld/testsuite/ld-elfweak/strongdata.sym
index 9b94377c84..88aa1c9def 100644
--- a/ld/testsuite/ld-elfweak/strongdata.sym
+++ b/ld/testsuite/ld-elfweak/strongdata.sym
@@ -1,2 +1,2 @@
-[0-9a-f]*[ ]+g[ ]+O[ ]+.(s|)(data|bss)[ ]+[0-9a-f]*[ ]+deallocate_foo
-[0-9a-f]*[ ]+g[ ]+F[ ]+.text[ ]+[0-9a-f]*[ ]+(0x[0-9a-f]*|)[ ]*foo
+[0-9a-f]+[ ]+g[ ]+O[ ]+\.s?(data|bss)[ ]+[0-9a-f]+[ ]+deallocate_foo
+[0-9a-f]+[ ]+g[ ]+F[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfweak/weak.dsym b/ld/testsuite/ld-elfweak/weak.dsym
index cc36c6f313..e3aa87ae22 100644
--- a/ld/testsuite/ld-elfweak/weak.dsym
+++ b/ld/testsuite/ld-elfweak/weak.dsym
@@ -1 +1 @@
-[0-9a-f]*[ ]+w[ ]+DF[ ]+.text[ ]+[0-9a-f]*[ ]+(Base[ ]+|[ ]*)(0x[0-9a-f]+|)[ ]*foo
+[0-9a-f]+[ ]+w[ ]+DF[ ]+\.(text|opd)[ ]+[0-9a-f]+[ ]+(Base[ ]+|[ ]*)(0x[0-9a-f]+ )?foo
diff --git a/ld/testsuite/ld-elfweak/weakdata.dsym b/ld/testsuite/ld-elfweak/weakdata.dsym
index e0f579ae12..5fdc6940b6 100644
--- a/ld/testsuite/ld-elfweak/weakdata.dsym
+++ b/ld/testsuite/ld-elfweak/weakdata.dsym
@@ -1 +1 @@
-[0-9a-f]*[ ]+w[ ]+DO[ ]+.(s|)data[ ]+[0-9a-f]*[ ]+(Base[ ]+|[ ]*)deallocate_foo
+[0-9a-f]+[ ]+w[ ]+DO[ ]+\.s?data[ ]+[0-9a-f]+[ ]+(Base[ ]+|[ ]*)deallocate_foo
diff --git a/ld/testsuite/ld-shared/elf-offset.ld b/ld/testsuite/ld-shared/elf-offset.ld
index 5e6611a234..125d879ab1 100644
--- a/ld/testsuite/ld-shared/elf-offset.ld
+++ b/ld/testsuite/ld-shared/elf-offset.ld
@@ -110,7 +110,7 @@ SECTIONS
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
}
- .got : { *(.got.plt) *(.got) }
+ .got : ALIGN(8) { *(.got.plt) *(.got .toc) }
.dynamic : { *(.dynamic) }
/* We want the small data sections together, so single-instruction offsets
can access them all, and initialized data all before uninitialized, so
diff --git a/ld/testsuite/ld-shared/shared.exp b/ld/testsuite/ld-shared/shared.exp
index 7987b02bb9..521b925572 100644
--- a/ld/testsuite/ld-shared/shared.exp
+++ b/ld/testsuite/ld-shared/shared.exp
@@ -43,9 +43,9 @@ if { ![istarget hppa*64*-*-hpux*] \
&& ![istarget m68k-*-linux*] \
&& ![istarget mips*-*-irix5*] \
&& ![istarget mips*-*-linux*] \
- && ![istarget powerpc-*-elf*] \
- && ![istarget powerpc-*-linux*] \
- && ![istarget powerpc-*-sysv4*] \
+ && ![istarget powerpc*-*-elf*] \
+ && ![istarget powerpc*-*-linux*] \
+ && ![istarget powerpc*-*-sysv4*] \
&& ![istarget sparc*-*-elf] \
&& ![istarget sparc*-*-solaris2*] \
&& ![istarget sparc*-*-sunos4*] \
@@ -226,6 +226,7 @@ if ![ld_compile "$CC $CFLAGS $SHCFLAG" $srcdir/$subdir/main.c $tmpdir/mainnp.o]
setup_xfail "*-*-sunos4*"
setup_xfail "ia64-*-linux*"
setup_xfail "alpha*-*-linux*"
+ setup_xfail "powerpc64*-*-*"
if { ![istarget hppa*64*-*-linux*] } {
setup_xfail "hppa*-*-linux*"
}
@@ -245,7 +246,7 @@ if ![ld_compile "$CC $CFLAGS $SHCFLAG" $srcdir/$subdir/main.c $tmpdir/mainnp.o]
# the load address is not zero (which is the default).
setup_xfail "*-*-sunos4*"
setup_xfail "*-*-linux*libc1"
- setup_xfail "powerpc-*-linux*"
+ setup_xfail "powerpc*-*-linux*"
setup_xfail "ia64-*-linux*"
setup_xfail "alpha*-*-linux*"
setup_xfail "mips*-*-linux*"
@@ -301,6 +302,7 @@ if ![ld_compile "$CC $CFLAGS $SHCFLAG $picflag" $srcdir/$subdir/main.c $tmpdir/m
setup_xfail "*-*-sunos4*"
setup_xfail "ia64-*-linux*"
setup_xfail "alpha*-*-linux*"
+ setup_xfail "powerpc64*-*-*"
if { ![istarget hppa*64*-*-linux*] } {
setup_xfail "hppa*-*-linux*"
}