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

H.J. Lu hjl.tools@gmail.com
Thu Oct 30 23:23:39 GMT 2025


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?

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.


More information about the Binutils mailing list