This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH] ld: Lookup section in output with the same name
- From: Alan Modra <amodra at gmail dot com>
- To: "H.J. Lu" <hjl dot tools at gmail dot com>
- Cc: Binutils <binutils at sourceware dot org>
- Date: Mon, 3 Sep 2018 18:02:58 +0930
- Subject: Re: [PATCH] ld: Lookup section in output with the same name
- References: <20180830205137.GA54739@intel.com> <20180831153912.GF10851@bubble.grove.modra.org> <CAMe9rOrB6u9PWXXJWtcHR474569jQ1RVJNFbU2iGxqKcvpdbVg@mail.gmail.com> <20180831161858.GJ10851@bubble.grove.modra.org>
Fixes pr23591 test failures on hppa64-hpux and score-elf, and xfails
frv-linux and lm32-linux.
PR ld/23591
* testsuite/ld-elf/pr23591a.s,
* testsuite/ld-elf/pr23591b.s,
* testsuite/ld-elf/pr23591c.s: Don't start directives in first column.
* testsuite/ld-elf/pr23591.d: xfail frv-linux and lm32-linux.
Allow __start___sancov_cntrs as a local symbol.
diff --git a/ld/testsuite/ld-elf/pr23591.d b/ld/testsuite/ld-elf/pr23591.d
index e002d73044..e5a7475324 100644
--- a/ld/testsuite/ld-elf/pr23591.d
+++ b/ld/testsuite/ld-elf/pr23591.d
@@ -3,7 +3,10 @@
#source: pr23591c.s
#ld: -e _start
#readelf: -sW
+#xfail: frv-*-linux* lm32-*-linux*
+# frv-linux and lm32-linux fail with complaints about emitting dynamic
+# relocations in read-only sections.
#...
- +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +GLOBAL +HIDDEN +[0-9]+ +___?start___sancov_cntrs
+ +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +(GLOBAL +HIDDEN|LOCAL +DEFAULT) +[0-9]+ +___?start___sancov_cntrs
#pass
diff --git a/ld/testsuite/ld-elf/pr23591a.s b/ld/testsuite/ld-elf/pr23591a.s
index ebdb7f8abb..7616b131cd 100644
--- a/ld/testsuite/ld-elf/pr23591a.s
+++ b/ld/testsuite/ld-elf/pr23591a.s
@@ -1,14 +1,14 @@
-.ifdef UNDERSCORE
+ .ifdef UNDERSCORE
.hidden ___start___sancov_cntrs
-.else
+ .else
.hidden __start___sancov_cntrs
-.endif
+ .endif
.text
.globl _start
.type _start, %function
_start:
-.ifdef UNDERSCORE
+ .ifdef UNDERSCORE
.dc.a ___start___sancov_cntrs
-.else
+ .else
.dc.a __start___sancov_cntrs
-.endif
+ .endif
diff --git a/ld/testsuite/ld-elf/pr23591b.s b/ld/testsuite/ld-elf/pr23591b.s
index 646e681cc5..4ab48fb4bb 100644
--- a/ld/testsuite/ld-elf/pr23591b.s
+++ b/ld/testsuite/ld-elf/pr23591b.s
@@ -1,11 +1,11 @@
.section .text,"axG",%progbits,foo1,comdat
-.ifdef UNDERSCORE
+ .ifdef UNDERSCORE
.globl _foo1
.type _foo1, %function
_foo1:
-.else
+ .else
.globl foo1
.type foo1, %function
foo1:
-.endif
+ .endif
.byte 0
diff --git a/ld/testsuite/ld-elf/pr23591c.s b/ld/testsuite/ld-elf/pr23591c.s
index 338671ceb7..695b218ad0 100644
--- a/ld/testsuite/ld-elf/pr23591c.s
+++ b/ld/testsuite/ld-elf/pr23591c.s
@@ -1,26 +1,26 @@
.section __sancov_cntrs,"aG",%progbits,foo1,comdat
.long 0
.section .text,"axG",%progbits,foo1,comdat
-.ifdef UNDERSCORE
+ .ifdef UNDERSCORE
.globl _foo1
.type _foo1, %function
_foo1:
-.else
+ .else
.globl foo1
.type foo1, %function
foo1:
-.endif
+ .endif
.long 0
.section __sancov_cntrs,"aG",%progbits,foo2,comdat
.long 1
.section .text,"axG",%progbits,foo2,comdat
-.ifdef UNDERSCORE
+ .ifdef UNDERSCORE
.globl _foo2
.type _foo2, %function
_foo2:
.long 1
-.else
+ .else
.globl foo2
.type foo2, %function
foo2:
-.endif
+ .endif
--
Alan Modra
Australia Development Lab, IBM