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.
This commit is contained in:
Jozef Lawrynowicz 2020-11-20 10:31:07 +00:00
parent f58a189583
commit cc6fd584ed
9 changed files with 48 additions and 20 deletions

View file

@ -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.

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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,

View file

@ -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

View file

@ -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

View file

@ -9,5 +9,5 @@
#...
[0-9a-f]+ . retain_from_lib
#...
[0-9a-f]+ . retained_fn
[0-9a-f]+ . retained_var
#pass

View file

@ -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"