Remove sframe relocs against discarded sections

Commit d7f343eaad testsuite change resulted in a regression for
s390x-linux.  This extends the x86_64 fix to other targets.

	PR ld/33156
	* elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Remove .sframe
	relocs too.
This commit is contained in:
Alan Modra
2025-07-17 14:42:31 +09:30
parent 118dc72152
commit fcf7470408

View File

@@ -3280,11 +3280,14 @@ extern asection _bfd_elf_large_com_section;
_bfd_clear_contents (howto, input_bfd, input_section, \
contents, rel[index].r_offset); \
\
/* For ld -r, remove relocations in debug and sframe sections \
against symbols defined in discarded sections. Not done for \
others. In particular the .eh_frame editing code expects \
such relocs to be present. */ \
if (bfd_link_relocatable (info) \
&& (input_section->flags & SEC_DEBUGGING)) \
&& ((input_section->flags & SEC_DEBUGGING) != 0 \
|| elf_section_type (input_section) == SHT_GNU_SFRAME)) \
{ \
/* Only remove relocations in debug sections since other \
sections may require relocations. */ \
Elf_Internal_Shdr *rel_hdr; \
\
rel_hdr = _bfd_elf_single_rel_hdr (input_section->output_section); \