Browse Source

testsuite supports_dt_relr

Tidy, and fix "FAIL: Build dt-relr-glibc-1b.so" on all non-x86
linux targets.

binutils/
	* binutils-common.exp (supports_dt_relr): New proc.
ld/
	* testsuite/config/default.exp (DT_RELR_LDFLAGS, NO_DT_RELR_LDFLAGS),
	(DT_RELR_CC_LDFLAGS, NO_DT_RELR_CC_LDFLAGS): Use supports_dt_relr.
	* testsuite/ld-elf/dt-relr.exp: Don't run unless supports_dt_relr.
	* testsuite/ld-elf/dt-relr-1a.d: Likewise.
	* testsuite/ld-elf/dt-relr-1b.d: Likewise.
	* testsuite/ld-elf/dt-relr-1c.d: Likewise.
	* testsuite/ld-elf/dt-relr-2a.d: Likewise.
	* testsuite/ld-elf/dt-relr-2b.d: Likewise.
	* testsuite/ld-elf/dt-relr-2c.d: Likewise.
	* testsuite/ld-elf/dt-relr-2d.d: Likewise.
	* testsuite/ld-elf/dt-relr-2e.d: Likewise.
	* testsuite/ld-elf/dt-relr-2f.d: Likewise.
	* testsuite/ld-elf/dt-relr-2g.d: Likewise.
	* testsuite/ld-elf/dt-relr-2h.d: Likewise.
	* testsuite/ld-elf/dt-relr-3a.d: Likewise.
	* testsuite/ld-elf/dt-relr-3b.d: Likewise.
binutils-2_38-branch
Alan Modra 4 years ago
parent
commit
fb6ac163ad
  1. 10
      binutils/testsuite/lib/binutils-common.exp
  2. 16
      ld/testsuite/config/default.exp
  3. 2
      ld/testsuite/ld-elf/dt-relr-1a.d
  4. 2
      ld/testsuite/ld-elf/dt-relr-1b.d
  5. 2
      ld/testsuite/ld-elf/dt-relr-1c.d
  6. 2
      ld/testsuite/ld-elf/dt-relr-2a.d
  7. 2
      ld/testsuite/ld-elf/dt-relr-2b.d
  8. 2
      ld/testsuite/ld-elf/dt-relr-2c.d
  9. 2
      ld/testsuite/ld-elf/dt-relr-2d.d
  10. 2
      ld/testsuite/ld-elf/dt-relr-2e.d
  11. 2
      ld/testsuite/ld-elf/dt-relr-2f.d
  12. 2
      ld/testsuite/ld-elf/dt-relr-2g.d
  13. 2
      ld/testsuite/ld-elf/dt-relr-2h.d
  14. 2
      ld/testsuite/ld-elf/dt-relr-3a.d
  15. 2
      ld/testsuite/ld-elf/dt-relr-3b.d
  16. 3
      ld/testsuite/ld-elf/dt-relr.exp

10
binutils/testsuite/lib/binutils-common.exp

@ -427,6 +427,16 @@ proc supports_persistent_section {} {
return 0;
}
# Whether a target support DT_RELR sections.
proc supports_dt_relr {} {
if { ([istarget x86_64-*-*] || [istarget i?86-*-*])
&& ([istarget *-*-linux*]
|| [istarget *-*-gnu*]) } {
return 1
}
return 0
}
# Compare two files line-by-line. FILE_1 is the actual output and FILE_2
# is the expected output. Ignore blank lines in either file.
#

16
ld/testsuite/config/default.exp

@ -314,9 +314,7 @@ if ![info exists LDFLAGS] then {
}
if { ![info exists DT_RELR_LDFLAGS] } then {
if { [istarget "i?86-*-linux*"] \
|| [istarget "x86_64-*-linux*"] \
|| [istarget "i?86-*-gnu**"] } then {
if { [supports_dt_relr] } then {
set DT_RELR_LDFLAGS "-z pack-relative-relocs"
} else {
set DT_RELR_LDFLAGS {}
@ -324,9 +322,7 @@ if { ![info exists DT_RELR_LDFLAGS] } then {
}
if { ![info exists DT_RELR_CC_LDFLAGS] } then {
if { [istarget "i?86-*-linux*"] \
|| [istarget "x86_64-*-linux*"] \
|| [istarget "i?86-*-gnu**"] } then {
if { [supports_dt_relr] } then {
set DT_RELR_CC_LDFLAGS "-Wl,-z,pack-relative-relocs"
} else {
set DT_RELR_CC_LDFLAGS {}
@ -334,9 +330,7 @@ if { ![info exists DT_RELR_CC_LDFLAGS] } then {
}
if { ![info exists NO_DT_RELR_LDFLAGS] } then {
if { [istarget "i?86-*-linux*"] \
|| [istarget "x86_64-*-linux*"] \
|| [istarget "i?86-*-gnu**"] } then {
if { [supports_dt_relr] } then {
set NO_DT_RELR_LDFLAGS "-z nopack-relative-relocs"
} else {
set NO_DT_RELR_LDFLAGS {}
@ -344,9 +338,7 @@ if { ![info exists NO_DT_RELR_LDFLAGS] } then {
}
if { ![info exists NO_DT_RELR_CC_LDFLAGS] } then {
if { [istarget "i?86-*-linux*"] \
|| [istarget "x86_64-*-linux*"] \
|| [istarget "i?86-*-gnu**"] } then {
if { [supports_dt_relr] } then {
set NO_DT_RELR_CC_LDFLAGS "-Wl,-z,nopack-relative-relocs"
} else {
set NO_DT_RELR_CC_LDFLAGS {}

2
ld/testsuite/ld-elf/dt-relr-1a.d

@ -1,7 +1,7 @@
#source: dt-relr-1.s
#ld: -e _start $DT_RELR_LDFLAGS
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#...
There is no dynamic section in this file.

2
ld/testsuite/ld-elf/dt-relr-1b.d

@ -1,7 +1,7 @@
#source: dt-relr-1.s
#ld: -e _start -pie $DT_RELR_LDFLAGS
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#failif
#...

2
ld/testsuite/ld-elf/dt-relr-1c.d

@ -1,7 +1,7 @@
#source: dt-relr-1.s
#ld: -shared $DT_RELR_LDFLAGS
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#failif
#...

2
ld/testsuite/ld-elf/dt-relr-2a.d

@ -1,7 +1,7 @@
#source: dt-relr-2.s
#ld: -e _start $DT_RELR_LDFLAGS
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#...
There is no dynamic section in this file.

2
ld/testsuite/ld-elf/dt-relr-2b.d

@ -1,7 +1,7 @@
#source: dt-relr-2.s
#ld: -e _start -pie $DT_RELR_LDFLAGS
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#...
0x[0-9a-f]+ \(RELR\) +0x[0-9a-f]+

2
ld/testsuite/ld-elf/dt-relr-2c.d

@ -1,7 +1,7 @@
#source: dt-relr-2.s
#ld: -shared $DT_RELR_LDFLAGS
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#...
0x[0-9a-f]+ \(RELR\) +0x[0-9a-f]+

2
ld/testsuite/ld-elf/dt-relr-2d.d

@ -1,7 +1,7 @@
#source: dt-relr-2.s
#ld: -e _start -pie $DT_RELR_LDFLAGS --no-relax
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#...
0x[0-9a-f]+ \(RELR\) +0x[0-9a-f]+

2
ld/testsuite/ld-elf/dt-relr-2e.d

@ -1,7 +1,7 @@
#source: dt-relr-2.s
#ld: -e _start -pie $DT_RELR_LDFLAGS -z nocombreloc
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#...
0x[0-9a-f]+ \(RELR\) +0x[0-9a-f]+

2
ld/testsuite/ld-elf/dt-relr-2f.d

@ -1,7 +1,7 @@
#source: dt-relr-2.s
#ld: -r $DT_RELR_LDFLAGS
#readelf: -rW
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#...
Relocation section '\.rel(a|)\.data' at offset 0x[0-9a-f]+ contains 5 entries:

2
ld/testsuite/ld-elf/dt-relr-2g.d

@ -1,7 +1,7 @@
#source: dt-relr-2.s
#ld: -e _start -pie $NO_DT_RELR_LDFLAGS
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#failif
#...

2
ld/testsuite/ld-elf/dt-relr-2h.d

@ -1,7 +1,7 @@
#source: dt-relr-2.s
#ld: -e _start -shared $NO_DT_RELR_LDFLAGS
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#failif
#...

2
ld/testsuite/ld-elf/dt-relr-3a.d

@ -1,7 +1,7 @@
#source: dt-relr-3.s
#ld: -e _start -pie $DT_RELR_LDFLAGS
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#failif
#...

2
ld/testsuite/ld-elf/dt-relr-3b.d

@ -1,7 +1,7 @@
#source: dt-relr-3.s
#ld: -shared $DT_RELR_LDFLAGS
#readelf: -rW -d
#target: x86_64-*-linux* i?86-*-linux-gnu i?86-*-gnu*
#target: [supports_dt_relr]
#failif
#...

3
ld/testsuite/ld-elf/dt-relr.exp

@ -19,8 +19,7 @@
# MA 02110-1301, USA.
#
# Linux tests.
if { ![istarget "*-*-linux*"] } {
if { ![supports_dt_relr] } {
return
}

Loading…
Cancel
Save