aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJozef Lawrynowicz <jozef.l@mittosystems.com>2020-11-20 10:31:07 +0000
committerJozef Lawrynowicz <jozef.l@mittosystems.com>2020-11-20 10:33:28 +0000
commitcc6fd584ed920b14d57703bb62c9ed773cea3732 (patch)
tree4b8865c327f3662bfc86a6fca66c1b5c0b009020
parentf58a189583b907340fa878d2961adec8548bb808 (diff)
downloadbinutils-cc6fd584ed920b14d57703bb62c9ed773cea3732.zip
binutils-cc6fd584ed920b14d57703bb62c9ed773cea3732.tar.gz
binutils-cc6fd584ed920b14d57703bb62c9ed773cea3732.tar.bz2
Fix SHF_GNU_RETAIN testsuite fallout
binutils/ChangeLog: * testsuite/binutils-all/readelf-maskos-1a.d: Fix test for unrecognized bit set in SHF_MASKOS range. * testsuite/binutils-all/readelf-maskos-1b.d: Likewise. * testsuite/binutils-all/readelf-maskos-unknown.s: New test. ld/ChangeLog: * testsuite/ld-elf/retain3.s: Move symbolic reference into writeable .data section from read-only .text section. * testsuite/ld-elf/retain5.d: Don't pass --print-gc-sections for test that doesn't require it. * testsuite/ld-elf/retain6a.d: Adjust test. * testsuite/ld-elf/retain6main.s: Move symbolic reference into writeable .data section from read-only .text section.
-rw-r--r--binutils/ChangeLog7
-rw-r--r--binutils/testsuite/binutils-all/readelf-maskos-1a.d10
-rw-r--r--binutils/testsuite/binutils-all/readelf-maskos-1b.d12
-rw-r--r--binutils/testsuite/binutils-all/readelf-maskos-unknown.s11
-rw-r--r--ld/ChangeLog10
-rw-r--r--ld/testsuite/ld-elf/retain3.s4
-rw-r--r--ld/testsuite/ld-elf/retain5.d2
-rw-r--r--ld/testsuite/ld-elf/retain6a.d2
-rw-r--r--ld/testsuite/ld-elf/retain6main.s10
9 files changed, 48 insertions, 20 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index e8bcd97..4acc0d4 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,10 @@
+2020-11-20 Jozef Lawrynowicz <jozef.l@mittosystems.com>
+
+ * testsuite/binutils-all/readelf-maskos-1a.d: Fix test for unrecognized
+ bit set in SHF_MASKOS range.
+ * testsuite/binutils-all/readelf-maskos-1b.d: Likewise.
+ * testsuite/binutils-all/readelf-maskos-unknown.s: New test.
+
2020-11-18 Jozef Lawrynowicz <jozef.l@mittosystems.com>
* NEWS: Announce SHF_GNU_RETAIN support.
diff --git a/binutils/testsuite/binutils-all/readelf-maskos-1a.d b/binutils/testsuite/binutils-all/readelf-maskos-1a.d
index 7b27358..cb18b3b 100644
--- a/binutils/testsuite/binutils-all/readelf-maskos-1a.d
+++ b/binutils/testsuite/binutils-all/readelf-maskos-1a.d
@@ -1,10 +1,10 @@
#name: Unknown SHF_MASKOS value in section
-#source: readelf-maskos.s
-#notarget: [supports_gnu_osabi] msp430-*-elf visium-*-elf
-#xfail: arm-*-elf
+#source: readelf-maskos-unknown.s
+#notarget: mips-*-* hppa-*-* score-*-* msp430-*-elf visium-*-elf
#readelf: -S --wide
-# PR26722 for the arm-*-elf XFAIL
+# Only run this test for targets that are not ELFOSABI_STANDALONE, and do not
+# set SHF_MASKOS bit 0x8000000.
#...
- \[[ 0-9]+\] .data.retain_var.*WAo.*
+ \[[ 0-9]+\] .data.var.*WAo.*
#pass
diff --git a/binutils/testsuite/binutils-all/readelf-maskos-1b.d b/binutils/testsuite/binutils-all/readelf-maskos-1b.d
index 2cbb58a..5c363f6 100644
--- a/binutils/testsuite/binutils-all/readelf-maskos-1b.d
+++ b/binutils/testsuite/binutils-all/readelf-maskos-1b.d
@@ -1,12 +1,12 @@
#name: -t (section details) for unknown SHF_MASKOS value in section
-#source: readelf-maskos.s
-#notarget: [supports_gnu_osabi] msp430-*-elf visium-*-elf
-#xfail: arm-*-elf
+#source: readelf-maskos-unknown.s
+#notarget: mips-*-* hppa-*-* score-*-* msp430-*-elf visium-*-elf
#readelf: -S -t --wide
-# PR26722 for the arm-*-elf XFAIL
+# Only run this test for targets that are not ELFOSABI_STANDALONE, and do not
+# set SHF_MASKOS bit 0x8000000.
#...
- \[[ 0-9]+\] .data.retain_var
+ \[[ 0-9]+\] .data.var
PROGBITS +0+ +[0-9a-f]+ +[0-9a-f]+ +[0-9a-f]+ +0 +0 +(1|2|4|8)
- \[00200003\]: WRITE, ALLOC, OS \(00200000\)
+ \[0+0800003\]: WRITE, ALLOC, OS \(0+0800000\)
#pass
diff --git a/binutils/testsuite/binutils-all/readelf-maskos-unknown.s b/binutils/testsuite/binutils-all/readelf-maskos-unknown.s
new file mode 100644
index 0000000..b36066b
--- /dev/null
+++ b/binutils/testsuite/binutils-all/readelf-maskos-unknown.s
@@ -0,0 +1,11 @@
+ .section .data.var,"0x800003"
+ .global var
+ .type var, %object
+var:
+ .long 2
+
+ .section .text._start,"ax"
+ .global _start
+ .type _start, %function
+_start:
+ .word 0
diff --git a/ld/ChangeLog b/ld/ChangeLog
index e9da9f8..c0b47f4 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,13 @@
+2020-11-20 Jozef Lawrynowicz <jozef.l@mittosystems.com>
+
+ * testsuite/ld-elf/retain3.s: Move symbolic reference into writeable
+ .data section from read-only .text section.
+ * testsuite/ld-elf/retain5.d: Don't pass --print-gc-sections for test
+ that doesn't require it.
+ * testsuite/ld-elf/retain6a.d: Adjust test.
+ * testsuite/ld-elf/retain6main.s: Move symbolic reference into writeable
+ .data section from read-only .text section.
+
2020-11-18 Alan Modra <amodra@gmail.com>
* testsuite/ld-powerpc/group1.d,
diff --git a/ld/testsuite/ld-elf/retain3.s b/ld/testsuite/ld-elf/retain3.s
index ce315cb..9e38833 100644
--- a/ld/testsuite/ld-elf/retain3.s
+++ b/ld/testsuite/ld-elf/retain3.s
@@ -6,9 +6,9 @@
foo:
.word 0
- .section .text.bar,"axR"
+ .section .data.bar,"awR"
.global bar
- .type bar, %function
+ .type bar, %object
bar:
.long foo
diff --git a/ld/testsuite/ld-elf/retain5.d b/ld/testsuite/ld-elf/retain5.d
index 86e85f8..9759531 100644
--- a/ld/testsuite/ld-elf/retain5.d
+++ b/ld/testsuite/ld-elf/retain5.d
@@ -1,6 +1,6 @@
#name: SHF_GNU_RETAIN 5 (don't pull SHF_GNU_RETAIN section out of lib)
#source: retain5main.s
-#ld: --gc-sections -e _start --print-gc-sections -Ltmpdir -lretain5 -Map=retain5.map
+#ld: --gc-sections -e _start -Ltmpdir -lretain5 -Map=retain5.map
#notarget: ![supports_gnu_osabi] ![check_gc_sections_available]
#map: retain5.map
#DUMPPROG: nm
diff --git a/ld/testsuite/ld-elf/retain6a.d b/ld/testsuite/ld-elf/retain6a.d
index aa93117..c8a47d5 100644
--- a/ld/testsuite/ld-elf/retain6a.d
+++ b/ld/testsuite/ld-elf/retain6a.d
@@ -9,5 +9,5 @@
#...
[0-9a-f]+ . retain_from_lib
#...
-[0-9a-f]+ . retained_fn
+[0-9a-f]+ . retained_var
#pass
diff --git a/ld/testsuite/ld-elf/retain6main.s b/ld/testsuite/ld-elf/retain6main.s
index a66c5b3..a1916de 100644
--- a/ld/testsuite/ld-elf/retain6main.s
+++ b/ld/testsuite/ld-elf/retain6main.s
@@ -1,9 +1,9 @@
-/* Undefined symbol reference in retained section .text.retained_fn requires
+/* Undefined symbol reference in retained section .data.retained_var requires
symbol definition to be pulled out of library. */
- .section .text.retained_fn,"axR"
- .global retained_fn
- .type retained_fn, %function
-retained_fn:
+ .section .data.retained_var,"awR"
+ .global retained_var
+ .type retained_var, %object
+retained_var:
.long bar
.section .text._start,"ax"