From: Alan Modra Date: Sun, 10 May 2026 23:48:29 +0000 (+0930) Subject: frv: elf32_frvfdpic_late_size_sections X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5a1d6df1a48fbfdda9ca203af7b5bdecf5ff403a;p=thirdparty%2Fbinutils-gdb.git frv: elf32_frvfdpic_late_size_sections This function runs passes over frvfdpic_relocs_info if dynobj is set, which is OK since the two variables are both non-NULL or both NULL in the current linker. That may change in the future, so test frvfdpic_relocs_info directly rather than dynobj. * elf32-frv.c (elf32_frvfdpic_late_size_sections): Omit dynobj test. Instead test frvfdpic_relocs_info. --- diff --git a/bfd/elf32-frv.c b/bfd/elf32-frv.c index 54b16cd285c..d8a338bb98a 100644 --- a/bfd/elf32-frv.c +++ b/bfd/elf32-frv.c @@ -5435,10 +5435,6 @@ elf32_frvfdpic_late_size_sections (bfd *output_bfd, asection *s; struct _frvfdpic_dynamic_got_plt_info gpinfo; - dynobj = elf_hash_table (info)->dynobj; - if (dynobj == NULL) - return true; - if (elf_hash_table (info)->dynamic_sections_created) { /* Set the contents of the .interp section to the interpreter. */ @@ -5452,6 +5448,9 @@ elf32_frvfdpic_late_size_sections (bfd *output_bfd, } } + if (frvfdpic_relocs_info (info) == NULL) + return true; + memset (&gpinfo, 0, sizeof (gpinfo)); gpinfo.g.info = info; @@ -5470,6 +5469,7 @@ elf32_frvfdpic_late_size_sections (bfd *output_bfd, /* Allocate space to save the summary information, we're going to use it if we're doing relaxations. */ + dynobj = elf_hash_table (info)->dynobj; frvfdpic_dynamic_got_plt_info (info) = bfd_alloc (dynobj, sizeof (gpinfo.g)); if (!_frvfdpic_size_got_plt (output_bfd, &gpinfo))