cmse_scan segfault

elf_sym_hashes for as-needed libs will be zeroed if the library is
found to be not needed.  More than that, the local symbols for such a
library should not be considered by cmse_scan.

	* elf32-arm.c (elf32_arm_size_stubs): Ignore as-needed libs that
	were not needed.
This commit is contained in:
Alan Modra 2018-10-24 15:08:28 +10:30
parent a76dc3b770
commit 8c246a60c0
2 changed files with 7 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2018-10-24 Alan Modra <amodra@gmail.com>
* elf32-arm.c (elf32_arm_size_stubs): Ignore as-needed libs that
were not needed.
2018-10-23 Alan Modra <amodra@gmail.com>
PR 23806

View File

@ -6449,7 +6449,8 @@ elf32_arm_size_stubs (bfd *output_bfd,
asection *section;
Elf_Internal_Sym *local_syms = NULL;
if (!is_arm_elf (input_bfd))
if (!is_arm_elf (input_bfd)
|| (elf_dyn_lib_class (input_bfd) & DYN_AS_NEEDED) != 0)
continue;
num_a8_relocs = 0;