[PATCH] lto: Set plugin_format to bfd_plugin_no only if known_used is set

H.J. Lu hjl.tools@gmail.com
Fri Oct 31 00:08:32 GMT 2025


On Fri, Oct 31, 2025 at 7:48 AM Alan Modra <amodra@gmail.com> wrote:
>
> On Fri, Oct 31, 2025 at 07:23:39AM +0800, H.J. Lu wrote:
> > On Wed, Oct 29, 2025 at 3:54 AM H.J. Lu <hjl.tools@gmail.com> wrote:
> > >
> > > commit b21318bd2c29fcca8f99c1de7facdaa5cb2e66e2
> > > Author: Joseph Myers <joseph@codesourcery.com>
> > > Date:   Thu May 11 14:31:09 2023 +0000
> > >
> > >     Add LDPT_REGISTER_CLAIM_FILE_HOOK_V2 linker plugin hook [GCC PR109128]
> > >
> > > added the LDPT_REGISTER_CLAIM_FILE_HOOK_V2 linker plugin hook support
> > > for offload support.  Since the V2 linker plugin hook doesn't claim
> > > the offload IR if known_used is unset, set input plugin_format to
> > > bfd_plugin_no only if known_used is set or the V2 linker plugin hook
> > > is unused.
> > >
> > > PR ld/33584
> > > * plugin.c (plugin_object_p): Set plugin_format to bfd_plugin_no
> > > only if known_used is set or the V2 linker plugin hook is unused.
> > >
> > > OK for master?
> > >
> > > Thanks.
> > >
> > > H.J.
> >
> > Any comments or objections on this one line change?
>
> Please go ahead and commit.

Hi Nick,

This fixed a regression.  OK to backport to release branches?

> > diff --git a/ld/plugin.c b/ld/plugin.c
> > index 08d827c1ec7..7e4eaf9cee4 100644
> > --- a/ld/plugin.c
> > +++ b/ld/plugin.c
> > @@ -1326,8 +1326,13 @@ plugin_object_p (bfd *ibfd, bool known_used)
> >  #endif
> >
> >        /* If plugin didn't claim the file, we don't need the dummy bfd.
> > - Can't avoid speculatively creating it, alas.  */
> > -      ibfd->plugin_format = bfd_plugin_no;
> > + Can't avoid speculatively creating it, alas.  NB: Set input
> > + plugin_format to bfd_plugin_no only if known_used is set or
> > + the LDPT_REGISTER_CLAIM_FILE_HOOK_V2 linker plugin hook is
> > + unused since the V2 linker plugin hook doesn't claim the
> > + offload IR if known_used is unset.  */
> > +      if (known_used || !claim_file_handler_v2)
> > + ibfd->plugin_format = bfd_plugin_no;
> >        bfd_close_all_done (abfd);
> >        return NULL;
> >      }
> >
> >
> > --
> > H.J.
>
> --
> Alan Modra



-- 
H.J.


More information about the Binutils mailing list