From: H.J. Lu Date: Tue, 28 Oct 2025 12:21:19 +0000 (+0800) Subject: lto: Set plugin_format to bfd_plugin_no only if known_used is set X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fheads%2Fbinutils-2_44-branch;p=thirdparty%2Fbinutils-gdb.git lto: Set plugin_format to bfd_plugin_no only if known_used is set commit b21318bd2c29fcca8f99c1de7facdaa5cb2e66e2 Author: Joseph Myers 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 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. Signed-off-by: H.J. Lu (cherry picked from commit 19c4084cfaadabe7d514a98019d68fe0a8bb8940) --- diff --git a/ld/plugin.c b/ld/plugin.c index e0013fc44bc..d44a00463a0 100644 --- a/ld/plugin.c +++ b/ld/plugin.c @@ -1325,8 +1325,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; }