From: Indu Bhagat Date: Thu, 14 Aug 2025 16:08:31 +0000 (-0700) Subject: bfd: sframe: fix PR ld/33199 X-Git-Tag: gdb-17-branchpoint~319 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cfebee1869110153f943e7e18de0013e649e420c;p=thirdparty%2Fbinutils-gdb.git bfd: sframe: fix PR ld/33199 Fix PR ld/33199 SEGV in _bfd_x86_elf_create_sframe_plt Currently, the selection for sframe_plt was not being done (and simply set to NULL) for the case when !normal_target, causing SEGV on Solaris. Initialize sframe_plt to init_table->sframe_lazy_plt when lazy_plt is true, and NULL otherwise. This is in line with htab->non_lazy_plt being set to NULL for !normal_target. bfd/ PR ld/33199 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Setup sframe_plt for !normal_target. --- diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c index 3dc00956eef..e2c61b85fc6 100644 --- a/bfd/elfxx-x86.c +++ b/bfd/elfxx-x86.c @@ -4604,6 +4604,8 @@ _bfd_x86_elf_link_setup_gnu_properties htab->sframe_plt = init_table->sframe_non_lazy_plt; } } + else if (lazy_plt) + htab->sframe_plt = init_table->sframe_lazy_plt; else htab->sframe_plt = NULL;