]> git.ipfire.org Git - thirdparty/binutils-gdb.git/log
thirdparty/binutils-gdb.git
20 hours agoAutomatic date update in version.in binutils-2_45-branch
GDB Administrator [Thu, 6 Nov 2025 00:03:28 +0000 (00:03 +0000)] 
Automatic date update in version.in

44 hours agoAutomatic date update in version.in
GDB Administrator [Wed, 5 Nov 2025 00:03:06 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 days agoAutomatic date update in version.in
GDB Administrator [Tue, 4 Nov 2025 00:04:52 +0000 (00:04 +0000)] 
Automatic date update in version.in

3 days agoAutomatic date update in version.in
GDB Administrator [Mon, 3 Nov 2025 00:02:56 +0000 (00:02 +0000)] 
Automatic date update in version.in

4 days agoAutomatic date update in version.in
GDB Administrator [Sun, 2 Nov 2025 00:03:47 +0000 (00:03 +0000)] 
Automatic date update in version.in

5 days agoAutomatic date update in version.in
GDB Administrator [Sat, 1 Nov 2025 00:04:07 +0000 (00:04 +0000)] 
Automatic date update in version.in

5 days agolto: Set plugin_format to bfd_plugin_no only if known_used is set
H.J. Lu [Tue, 28 Oct 2025 12:21:19 +0000 (20:21 +0800)] 
lto: Set plugin_format to bfd_plugin_no only if known_used is set

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 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 <hjl.tools@gmail.com>
(cherry picked from commit 19c4084cfaadabe7d514a98019d68fe0a8bb8940)

6 days agoAutomatic date update in version.in
GDB Administrator [Fri, 31 Oct 2025 00:03:59 +0000 (00:03 +0000)] 
Automatic date update in version.in

7 days agoAutomatic date update in version.in
GDB Administrator [Thu, 30 Oct 2025 00:02:08 +0000 (00:02 +0000)] 
Automatic date update in version.in

8 days agoAutomatic date update in version.in
GDB Administrator [Wed, 29 Oct 2025 00:03:38 +0000 (00:03 +0000)] 
Automatic date update in version.in

9 days agoaarch64: gas: Allow movprfx with fmmla and bfscale [PR gas/33562]
Alfie Richards [Thu, 23 Oct 2025 09:45:22 +0000 (09:45 +0000)] 
aarch64: gas: Allow movprfx with fmmla and bfscale [PR gas/33562]

These instructions were previously incorrectly marked as not accepting
movprfx.  Fix this and add tests.

PR gas/33562

opcodes:
* aarch64-tbl.h: Update widening fmmmla and bfscale instructions.
gas:
* testsuite/gas/aarch64/f8f16mm_sve2-bad.l: Update test with movprfx.
* testsuite/gas/aarch64/f8f16mm_sve2.d: Ditto.
* testsuite/gas/aarch64/f8f16mm_sve2.s: Ditto.
* testsuite/gas/aarch64/f8f32mm_sve2-bad.l: Ditto.
* testsuite/gas/aarch64/f8f32mm_sve2.d: Ditto.
* testsuite/gas/aarch64/f8f32mm_sve2.s: Ditto.
* testsuite/gas/aarch64/sve-f16f32mm-bad.l: Ditto.
* testsuite/gas/aarch64/sve-f16f32mm.d: Ditto.
* testsuite/gas/aarch64/sve-f16f32mm.s: Ditto.
* testsuite/gas/aarch64/sve-bfscale-sve2.s: Ditto.
* testsuite/gas/aarch64/sve-bfscale-sve2.d: Ditto.

Approved-By: Alice Carlotti <alice.carlotti@arm.com>
9 days agoAutomatic date update in version.in
GDB Administrator [Tue, 28 Oct 2025 00:05:46 +0000 (00:05 +0000)] 
Automatic date update in version.in

10 days agoAutomatic date update in version.in
GDB Administrator [Mon, 27 Oct 2025 00:02:09 +0000 (00:02 +0000)] 
Automatic date update in version.in

11 days agoAutomatic date update in version.in
GDB Administrator [Sun, 26 Oct 2025 00:02:01 +0000 (00:02 +0000)] 
Automatic date update in version.in

12 days agoAutomatic date update in version.in
GDB Administrator [Sat, 25 Oct 2025 00:01:02 +0000 (00:01 +0000)] 
Automatic date update in version.in

13 days agoAutomatic date update in version.in
GDB Administrator [Fri, 24 Oct 2025 00:02:18 +0000 (00:02 +0000)] 
Automatic date update in version.in

2 weeks agoAutomatic date update in version.in
GDB Administrator [Thu, 23 Oct 2025 00:04:57 +0000 (00:04 +0000)] 
Automatic date update in version.in

2 weeks agoAutomatic date update in version.in
GDB Administrator [Wed, 22 Oct 2025 00:02:49 +0000 (00:02 +0000)] 
Automatic date update in version.in

2 weeks agoAutomatic date update in version.in
GDB Administrator [Tue, 21 Oct 2025 00:02:18 +0000 (00:02 +0000)] 
Automatic date update in version.in

2 weeks agoAutomatic date update in version.in
GDB Administrator [Mon, 20 Oct 2025 00:04:17 +0000 (00:04 +0000)] 
Automatic date update in version.in

2 weeks agoAutomatic date update in version.in
GDB Administrator [Sun, 19 Oct 2025 00:01:48 +0000 (00:01 +0000)] 
Automatic date update in version.in

2 weeks agoAutomatic date update in version.in
GDB Administrator [Sat, 18 Oct 2025 00:00:38 +0000 (00:00 +0000)] 
Automatic date update in version.in

2 weeks agoAutomatic date update in version.in
GDB Administrator [Fri, 17 Oct 2025 00:01:36 +0000 (00:01 +0000)] 
Automatic date update in version.in

3 weeks agoAutomatic date update in version.in
GDB Administrator [Thu, 16 Oct 2025 00:02:51 +0000 (00:02 +0000)] 
Automatic date update in version.in

3 weeks agoAutomatic date update in version.in
GDB Administrator [Wed, 15 Oct 2025 00:02:54 +0000 (00:02 +0000)] 
Automatic date update in version.in

3 weeks agoAutomatic date update in version.in
GDB Administrator [Tue, 14 Oct 2025 00:04:58 +0000 (00:04 +0000)] 
Automatic date update in version.in

3 weeks agoAutomatic date update in version.in
GDB Administrator [Mon, 13 Oct 2025 00:02:22 +0000 (00:02 +0000)] 
Automatic date update in version.in

3 weeks agoAutomatic date update in version.in
GDB Administrator [Sun, 12 Oct 2025 00:00:45 +0000 (00:00 +0000)] 
Automatic date update in version.in

3 weeks agoAutomatic date update in version.in
GDB Administrator [Sat, 11 Oct 2025 00:01:07 +0000 (00:01 +0000)] 
Automatic date update in version.in

3 weeks agoAutomatic date update in version.in
GDB Administrator [Fri, 10 Oct 2025 00:00:41 +0000 (00:00 +0000)] 
Automatic date update in version.in

4 weeks agoAutomatic date update in version.in
GDB Administrator [Thu, 9 Oct 2025 00:02:55 +0000 (00:02 +0000)] 
Automatic date update in version.in

4 weeks agoaarch64, gas: Relax Armv9.6-A mandatory feature set
Andre Vieira [Wed, 8 Oct 2025 10:30:56 +0000 (11:30 +0100)] 
aarch64, gas: Relax Armv9.6-A mandatory feature set

Remove FPRCVT and SVE2p2 from the set of mandatory features for Armv9.6-A.

(cherry picked from commit 94861aa1c05d18f9d870cf4ed6782877b796ec7c)

4 weeks agoAutomatic date update in version.in
GDB Administrator [Wed, 8 Oct 2025 00:04:45 +0000 (00:04 +0000)] 
Automatic date update in version.in

4 weeks agoAutomatic date update in version.in
GDB Administrator [Tue, 7 Oct 2025 00:04:21 +0000 (00:04 +0000)] 
Automatic date update in version.in

4 weeks agoAutomatic date update in version.in
GDB Administrator [Mon, 6 Oct 2025 00:02:35 +0000 (00:02 +0000)] 
Automatic date update in version.in

4 weeks agoAutomatic date update in version.in
GDB Administrator [Sun, 5 Oct 2025 00:04:28 +0000 (00:04 +0000)] 
Automatic date update in version.in

4 weeks agoAutomatic date update in version.in
GDB Administrator [Sat, 4 Oct 2025 00:04:39 +0000 (00:04 +0000)] 
Automatic date update in version.in

4 weeks agoi386: Add GLIBC_ABI_GNU_TLS version dependency
H.J. Lu [Sun, 31 Aug 2025 14:13:08 +0000 (07:13 -0700)] 
i386: Add GLIBC_ABI_GNU_TLS version dependency

On Linux/i386, programs and shared libraries compiled with
-mtls-dialect=gnu may fail silently at run-time against glibc without
the GNU TLS run-time fix for:

https://sourceware.org/bugzilla/show_bug.cgi?id=32996

The glibc version tag, GLIBC_ABI_GNU_TLS, has been added to indicate
that glibc has the working GNU TLS run-time:

commit ed1b7a5a489ab555a27fad9c101ebe2e1c1ba881
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Mon Jul 28 12:16:11 2025 -0700

    i386: Add GLIBC_ABI_GNU_TLS version [BZ #33221]

Add the --gnu-tls-tag option to x86-64 ELF linker to add the
GLIBC_ABI_GNU_TLS version dependency in output programs and shared
libraries when linking against glibc if input relocatable object files
call ___tls_get_addr.  The output will fail to load and run at run-time
against glibc which doesn't define the GLIBC_ABI_GNU_TLS version.

Add the --enable-gnu-tls-tag configure option to enable --gnu-tls-tag
by default.  If unspecified, linker will add the GLIBC_ABI_GNU_TLS
version dependency if input call ___tls_get_addr and libc.so defines
the GLIBC_ABI_GNU2_TLS version.

bfd/

PR ld/33287
* elf-linker-x86.h (elf_linker_x86_params): Add
gnu_tls_version_tag.
* elf32-i386.c (elf_backend_add_glibc_version_dependency): Add
GLIBC_ABI_GNU_TLS support.
* elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Set
has_tls_get_addr_call to 1 if ___tls_get_addr is used.
* elfxx-x86.h (elf_x86_link_hash_table): Add has_tls_get_addr_call.

ld/

PR ld/33287
* Mention --gnu-tls-tag, --no-gnu-tls-tag and --enable-gnu-tls-tag.
* config.in: Regenerated.
* configure: Likewise.
* configure.ac: Add --enable-gnu-tls-tag.
* ld.texi: Document --gnu-tls-tag and --enable-gnu-tls-tag.
* ldlex.h (option_values): Add OPTION_GNU_TLS_VERSION_TAG and
OPTION_NO_GNU_TLS_VERSION_TAG.
* emultempl/elf-i386-glibc.em (elf_i386_glibc_before_parse):
Initialize params.gnu_tls_version_tag.
(PARSE_AND_LIST_LONGOPTS_386): New.
(PARSE_AND_LIST_OPTIONS_386): Likewise.
(PARSE_AND_LIST_ARGS_CASES_386): Likewise.
(PARSE_AND_LIST_LONGOPTS): Append $PARSE_AND_LIST_LONGOPTS_386.
(PARSE_AND_LIST_OPTIONS): Append $PARSE_AND_LIST_OPTIONS_386.
(PARSE_AND_LIST_ARGS_CASES): Append
$PARSE_AND_LIST_ARGS_CASES_386.
* testsuite/ld-i386/gnu-tls-1.s: Likewise.
* testsuite/ld-i386/gnu-tls-1a.rd: Likewise.
* testsuite/ld-i386/gnu-tls-1b.rd: Likewise.
* testsuite/ld-i386/i386.exp: Run PR ld/33287 tests.

(cherry picked from commit fbcdc06c238be4fd6da7fb9bff4dd4c7f749ae07)

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
4 weeks agox86-64: Add GLIBC_ABI_DT_X86_64_PLT version dependency
H.J. Lu [Sun, 31 Aug 2025 14:13:07 +0000 (07:13 -0700)] 
x86-64: Add GLIBC_ABI_DT_X86_64_PLT version dependency

On Linux/x86-64, programs and shared libraries created with -z mark-plt
have the GLIBC_2.36 version tag dependency since -z mark-plt uses the
r_addend field of the R_X86_64_JUMP_SLOT relocation to store the offset
of the indirect branch instruction.  Glibc versions which don't have the
commit added to glibc 2.36:

commit f8587a61892cbafd98ce599131bf4f103466f084
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri May 20 19:21:48 2022 -0700

    x86-64: Ignore r_addend for R_X86_64_GLOB_DAT/R_X86_64_JUMP_SLOT

won't ignore the r_addend value in the R_X86_64_JUMP_SLOT relocation.  If
glibc versions defines GLIBC_ABI_DT_X86_64_PLT version tag with

commit 399384e0c8193e31aea014220ccfa24300ae5938
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Thu Aug 14 07:03:20 2025 -0700

    x86-64: Add GLIBC_ABI_DT_X86_64_PLT [BZ #33212]

to indicate inclusion of the commit:

commit f8587a61892cbafd98ce599131bf4f103466f084
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri May 20 19:21:48 2022 -0700

    x86-64: Ignore r_addend for R_X86_64_GLOB_DAT/R_X86_64_JUMP_SLOT

we can add GLIBC_ABI_DT_X86_64_PLT version tag dependency, instead of
GLIBC_2.36 version tag dependency.

PR ld/33213
* elf-bfd.h (_bfd_elf_link_add_glibc_version_dependency): Change
return type to bool.
* elf64-x86-64.c (elf_x86_64_add_glibc_version_dependency): Add
GLIBC_ABI_DT_X86_64_PLT version tag dependency, instead of,
GLIBC_2.36 version tag dependency, for -z mark-plt if libc.so
defines GLIBC_ABI_DT_X86_64_PLT version tag.
* elflink.c (_bfd_elf_link_add_glibc_version_dependency): Change
return type to bool.  Return false if elf_link_add_glibc_verneed
returns false.

(cherry picked from commit 66e4999f343f85116cf2dda137cc0f31ac793ce6)

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
4 weeks agox86: Add GLIBC_ABI_GNU2_TLS version dependency
H.J. Lu [Sun, 31 Aug 2025 14:13:06 +0000 (07:13 -0700)] 
x86: Add GLIBC_ABI_GNU2_TLS version dependency

On Linux/x86, programs and shared libraries compiled with
-mtls-dialect=gnu2 may fail silently at run-time against glibc without
the GNU2 TLS run-time fixes for:

https://sourceware.org/bugzilla/show_bug.cgi?id=31501
https://sourceware.org/bugzilla/show_bug.cgi?id=31372

A version tag, GLIBC_ABI_GNU2_TLS, has been added to glibc to indicate
that glibc has the working GNU2 TLS run-time.  Add the --gnu2-tls-tag
option to i386/x86-64 ELF linker to add the GLIBC_ABI_GNU2_TLS version
dependency in output programs and shared libraries when linking against
glibc if input relocatable object files have R_386_TLS_DESC_CALL or
R_X86_64_TLSDESC_CALL relocation.  The output will fail to load and run
at run-time against glibc which doesn't define the GLIBC_ABI_GNU2_TLS
version.

Add the --enable-gnu2-tls-tag configure option to enable --gnu2-tls-tag
by default.  If unspecified, linker will add the GLIBC_ABI_GNU2_TLS
version dependency if input object files have R_386_TLS_DESC_CALL or
R_X86_64_TLSDESC_CALL relocation and libc.so defines the GLIBC_ABI_GNU2_TLS
version.

Update elf_link_add_glibc_verneed to properly add the GLIBC_2.36 version
dependency when -z mark-plt -z nopack-relative-relocs passed to x86-64
ELF linker.

bfd/

PR ld/33130
* elf-bfd.h (_bfd_elf_link_add_glibc_version_dependency): Add
a pointer to bool argument.
* elf-linker-x86.h (elf_linker_x86_params): Add
gnu2_tls_version_tag.
* elf32-i386.c (elf_i386_scan_relocs): Set has_tls_desc_call to
1 for R_386_TLS_DESC_CALL.
(elf_i386_add_glibc_version_dependency): New.  Undef before
FreeBSD support.
* elf64-x86-64.c (elf_x86_64_scan_relocs): Set has_tls_desc_call
to 1 for R_X86_64_TLSDESC_CALL.
(elf_x86_64_add_glibc_version_dependency): Add GLIBC_ABI_GNU2_TLS
version dependency if GLIBC_ABI_GNU2_TLS dependency isn't disabled
and has_tlsdesc_call isn't 0.
(elf_backend_add_glibc_version_dependency): Undef before CloudABI
support and redefine for elf32-x86-64.
* elflink.c (elf_link_add_glibc_verneed): Changed to return bool.
Remove the pointer to elf_find_verdep_info argument.  Add a
pointer to bool argument, auto_version. Return true if linked
against glibc.  Otherwise return false.  If the version dependency
is added, set *auto_version to true.  If *auto_version is true,
add the version dependency only if libc.so defines the version.
(_bfd_elf_link_add_glibc_version_dependency): Add a pointer to
bool argument and pass it to elf_link_add_glibc_verneed.
(_bfd_elf_link_add_dt_relr_dependency): Pass NULL to
_bfd_elf_link_add_glibc_version_dependency.
* elfxx-x86.h (elf_x86_link_hash_table): Add has_tls_desc_call.

ld/

PR ld/33130
* NEWS: Mention --gnu2-tls-tag, --no-gnu2-tls-tag and
--enable-gnu2-tls-tag.
* config.in: Regenerated.
* configure: Likewise.
* configure.ac: Add --enable-gnu2-tls-tag.
* ld.texi: Document --gnu2-tls-tag/--no-gnu2-tls-tag.
* ldlex.h (option_values): Add OPTION_GNU2_TLS_VERSION_TAG and
OPTION_NO_GNU2_TLS_VERSION_TAG.
* emulparams/elf32_x86_64.sh (EXTRA_EM_FILE): Changed to
"elf-x86-64-glibc".
* emulparams/elf_i386.sh (EXTRA_EM_FILE): Set to "elf-i386-glibc".
* emulparams/elf_i386_fbsd.sh (EXTRA_EM_FILE): New.  Set to
"elf-x86".
        * emulparams/elf_i386_haiku.sh (EXTRA_EM_FILE): Likewise.
* emulparams/elf_x86_64.sh (EXTRA_EM_FILE): Likewise.
* emulparams/elf_x86_64_cloudabi.sh (EXTRA_EM_FILE): New.  Set to
"elf-x86-64".
* emulparams/elf_x86_64_fbsd.sh (EXTRA_EM_FILE): New.  Set to
"elf-x86-64".
* emulparams/elf_x86_64_haiku.sh (EXTRA_EM_FILE): Likewise.
* (EXTRA_EM_FILE): Likewise.
* (EXTRA_EM_FILE): Likewise.
        * emultempl/elf-i386-glibc.em: New file.
* emultempl/elf-x86-64-glibc.em: Likewise.
* emultempl/elf-x86-64.em: Likewise.
* emultempl/elf-x86-glibc.em: Likewise.
* emultempl/elf-x86.em (elf_x86_64_before_parse): Removed.
(LDEMUL_BEFORE_PARSE): Likewise.
(elf_x86_64_before_allocation): Likewise.
(LDEMUL_BEFORE_ALLOCATION): Likewise.
* emultempl/solaris2-x86-64.em: New file.
* testsuite/ld-i386/gnu2-tls-1.s: Likewise.
* testsuite/ld-i386/gnu2-tls-1a.rd: Likewise.
* testsuite/ld-i386/gnu2-tls-1b.rd: Likewise.
* testsuite/ld-x86-64/gnu2-tls-1.s: Likewise.
* testsuite/ld-x86-64/gnu2-tls-1a.rd: Likewise.
* testsuite/ld-x86-64/gnu2-tls-1b.rd: Likewise.
* testsuite/ld-x86-64/mark-plt-2.rd: Likewise.
* testsuite/ld-x86-64/mark-plt-2.s: Likewise.
* testsuite/ld-i386/i386.exp: Run GLIBC_ABI_GNU2_TLS tests.
* testsuite/ld-x86-64/x86-64.exp: Likewise.

(cherry picked from commit 0d1e88f8bfb0e62f37bf8a89172cd91373ace5e6)

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
4 weeks agoAutomatic date update in version.in
GDB Administrator [Fri, 3 Oct 2025 00:04:17 +0000 (00:04 +0000)] 
Automatic date update in version.in

5 weeks agoAutomatic date update in version.in
GDB Administrator [Thu, 2 Oct 2025 00:02:56 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 weeks agoAutomatic date update in version.in
GDB Administrator [Wed, 1 Oct 2025 00:04:24 +0000 (00:04 +0000)] 
Automatic date update in version.in

5 weeks agoAutomatic date update in version.in
GDB Administrator [Tue, 30 Sep 2025 00:03:56 +0000 (00:03 +0000)] 
Automatic date update in version.in

5 weeks agoAutomatic date update in version.in
GDB Administrator [Mon, 29 Sep 2025 00:04:49 +0000 (00:04 +0000)] 
Automatic date update in version.in

5 weeks agoAutomatic date update in version.in
GDB Administrator [Sun, 28 Sep 2025 00:04:28 +0000 (00:04 +0000)] 
Automatic date update in version.in

5 weeks agoAutomatic date update in version.in
GDB Administrator [Sat, 27 Sep 2025 00:03:21 +0000 (00:03 +0000)] 
Automatic date update in version.in

5 weeks agoAutomatic date update in version.in
GDB Administrator [Fri, 26 Sep 2025 00:06:32 +0000 (00:06 +0000)] 
Automatic date update in version.in

6 weeks agoAutomatic date update in version.in
GDB Administrator [Thu, 25 Sep 2025 00:03:03 +0000 (00:03 +0000)] 
Automatic date update in version.in

6 weeks agoAutomatic date update in version.in
GDB Administrator [Wed, 24 Sep 2025 00:04:34 +0000 (00:04 +0000)] 
Automatic date update in version.in

6 weeks agoAutomatic date update in version.in
GDB Administrator [Tue, 23 Sep 2025 00:05:11 +0000 (00:05 +0000)] 
Automatic date update in version.in

6 weeks agoAutomatic date update in version.in
GDB Administrator [Mon, 22 Sep 2025 00:01:44 +0000 (00:01 +0000)] 
Automatic date update in version.in

6 weeks agoAutomatic date update in version.in
GDB Administrator [Sun, 21 Sep 2025 00:03:12 +0000 (00:03 +0000)] 
Automatic date update in version.in

6 weeks agoAutomatic date update in version.in
GDB Administrator [Sat, 20 Sep 2025 00:06:52 +0000 (00:06 +0000)] 
Automatic date update in version.in

6 weeks agoAutomatic date update in version.in
GDB Administrator [Fri, 19 Sep 2025 00:03:36 +0000 (00:03 +0000)] 
Automatic date update in version.in

7 weeks agoAutomatic date update in version.in
GDB Administrator [Thu, 18 Sep 2025 00:07:59 +0000 (00:07 +0000)] 
Automatic date update in version.in

7 weeks agoAutomatic date update in version.in
GDB Administrator [Wed, 17 Sep 2025 00:05:57 +0000 (00:05 +0000)] 
Automatic date update in version.in

7 weeks agoAutomatic date update in version.in
GDB Administrator [Tue, 16 Sep 2025 00:05:27 +0000 (00:05 +0000)] 
Automatic date update in version.in

7 weeks agoAutomatic date update in version.in
GDB Administrator [Mon, 15 Sep 2025 00:02:41 +0000 (00:02 +0000)] 
Automatic date update in version.in

7 weeks agox86: Copy non_got_ref_without_indirect_extern_access
H.J. Lu [Wed, 10 Sep 2025 01:38:49 +0000 (18:38 -0700)] 
x86: Copy non_got_ref_without_indirect_extern_access

Copy non_got_ref_without_indirect_extern_access when copying indirect
symbol for weak alias so that _bfd_x86_elf_adjust_dynamic_symbol will
properly handle GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS.

bfd/

PR ld/33409
* elfxx-x86.c (_bfd_x86_elf_copy_indirect_symbol): Copy
non_got_ref_without_indirect_extern_access.

ld/

PR ld/33409
* testsuite/config/default.exp (DIRECT_EXTERN_ACCESS_CFLAGS): New.
(NO_DIRECT_EXTERN_ACCESS_CFLAGS): Likewise.
* testsuite/ld-elf/shared.exp: Run PR ld/33409 tests.
* testsuite/ld-elf/pr33409a.c: New file.
* testsuite/ld-elf/pr33409b.c: Likewise.
* testsuite/ld-elf/pr33409c.c: Likewise.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
(cherry picked from commit 59ada1f6d61bfc7b119f0ae6edcc23dc569e70ad)

7 weeks agoAutomatic date update in version.in
GDB Administrator [Sun, 14 Sep 2025 00:07:31 +0000 (00:07 +0000)] 
Automatic date update in version.in

7 weeks agoAutomatic date update in version.in
GDB Administrator [Sat, 13 Sep 2025 00:04:21 +0000 (00:04 +0000)] 
Automatic date update in version.in

7 weeks agoAutomatic date update in version.in
GDB Administrator [Fri, 12 Sep 2025 00:03:28 +0000 (00:03 +0000)] 
Automatic date update in version.in

8 weeks agoAutomatic date update in version.in
GDB Administrator [Thu, 11 Sep 2025 00:05:53 +0000 (00:05 +0000)] 
Automatic date update in version.in

8 weeks agoAutomatic date update in version.in
GDB Administrator [Wed, 10 Sep 2025 00:04:29 +0000 (00:04 +0000)] 
Automatic date update in version.in

8 weeks agoAutomatic date update in version.in
GDB Administrator [Tue, 9 Sep 2025 00:04:16 +0000 (00:04 +0000)] 
Automatic date update in version.in

8 weeks agoAutomatic date update in version.in
GDB Administrator [Mon, 8 Sep 2025 00:03:57 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Sun, 7 Sep 2025 00:03:03 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Sat, 6 Sep 2025 00:01:31 +0000 (00:01 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Fri, 5 Sep 2025 00:04:11 +0000 (00:04 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Thu, 4 Sep 2025 00:02:40 +0000 (00:02 +0000)] 
Automatic date update in version.in

2 months agovisium MAX_MEM_FOR_RS_ALIGN_CODE
Alan Modra [Tue, 2 Sep 2025 09:43:36 +0000 (19:13 +0930)] 
visium MAX_MEM_FOR_RS_ALIGN_CODE

Commit 7ca6020a4e52 "tidy target HANDLE_ALIGN" didn't account for
the "fix" amount emitted by visium_handle_align.  This didn't show up
as a problem due to frag alignment hiding the error, until I started
messing with struct frag.

* config/tc-visium.h (MAX_MEM_FOR_RS_ALIGN_CODE): Correct.

(cherry picked from commit 74fe8e29dc61bbe2c258c2c13f4b91f99faf6571)

2 months agoAutomatic date update in version.in
GDB Administrator [Wed, 3 Sep 2025 00:04:16 +0000 (00:04 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Tue, 2 Sep 2025 00:03:29 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agostrip: Don't treat fat IR objects as plugin object
H.J. Lu [Sun, 3 Aug 2025 17:28:40 +0000 (10:28 -0700)] 
strip: Don't treat fat IR objects as plugin object

Fat IR objects contains both regular sections and IR sections.  After

commit 717a38e9a02109fcbcb18bb2ec3aa251e2ad0a0d
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Sun May 4 05:12:46 2025 +0800

    strip: Add GCC LTO IR support

"strip --strip-debug" no longer strips debug sections in fat IR objects
since fat IR objects are recognized as plugin object and copied as unknown
objects.  Add a is_strip_input field to bfd to indicate called from strip.
Update bfd_check_format_matches not to treat archive member nor standalone
fat IR object as IR object so that strip can remove debug and IR sections
in fat IR object.  For archive member, it is copied as an unknown object
if the plugin target is in use or it is a slim IR object.  For standalone
fat IR object, it is copied as non-IR object.

bfd/

PR binutils/33246
* archive.c: Include "plugin-api.h" and "plugin.h" if plugin is
enabled.
(_bfd_compute_and_write_armap): Don't complain plugin is needed
when the plugin target is in use.
* bfd-in2.h: Regenerated.
* bfd.c (bfd): Add is_strip_input.
* format.c (bfd_set_lto_type): If there is .llvm.lto section,
set LTO type to lto_fat_ir_object.
(bfd_check_format_matches): Don't set LTO type when setting
format.  When called from strip, don't treat archive member nor
standalone fat IR object as an IR object.
* plugin.c (bfd_plugin_get_symbols_in_object_only): Copy LTO
type derived from input sections.

nm/

PR binutils/33246
* nm.c (filter_symbols): Don't complain plugin is needed when
the plugin target is in use.
(display_rel_file): Likewise.
* objcopy.c (copy_archive): Set the BFD is_strip_input field of
archive member to 1 to indicate called from strip.  Also copy
slim IR archive member as unknown object.
(copy_file): Set the BFD is_strip_input field of input bfd to
1 to indicate called from strip.
(strip_main): Keep .gnu.debuglto_* sections unless all GCC LTO
sections will be removed.

ld/

PR binutils/33246
* testsuite/ld-plugin/lto-binutils.exp (run_pr33246_test): New.
Run binutils/33246 tests with GCC and Clang.
* testsuite/ld-plugin/pr33246.c: New file.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
(cherry picked from commit c2729c37f10af09126b2916215cae425ae724f55)

2 months agostrip: Treat "default" output_target as unspecified
H.J. Lu [Thu, 31 Jul 2025 03:34:46 +0000 (20:34 -0700)] 
strip: Treat "default" output_target as unspecified

Treat output target as unspecified if it is set to "default".

binutils/

PR binutils/33230
* objcopy.c (copy_file): Treat "default" output_target as
unspecified.

binutils/testsuite/

PR binutils/33230
* binutils-all/x86-64/x86-64.exp (run_pr33230_test): New.
Run binutils/33230 tests with readelf if supported.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
(cherry picked from commit 3ac83564eb3c858eb1add02b6e86b5628e4abd78)

2 months agostrip: Don't check target_defaulted in input BFD
H.J. Lu [Wed, 30 Jul 2025 15:53:11 +0000 (08:53 -0700)] 
strip: Don't check target_defaulted in input BFD

The target_defaulted field in BFD is set to true if the target isn't
specified.  After

commit 717a38e9a02109fcbcb18bb2ec3aa251e2ad0a0d
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Sun May 4 05:12:46 2025 +0800

    strip: Add GCC LTO IR support

the target is set to "plugin" if BFD supports plugin when the target
isn't specified nor default.  Update strip to check the input target,
instead of the target_defaulted field in input BFD.

PR binutils/33230
* objcopy.c (copy_object): Add a bool argument, target_defaulted,
to indicate if the input target isn't specified nor default.
Check it instead of ibfd->target_defaulted.
(copy_archive): Add a bool argument, target_defaulted, and pass
it to copy_object.
(copy_file): Set target_defaulted to true if the input target
isn't specified and pass it to copy_archive and copy_object.
* testsuite/binutils-all/x86-64/pr33230.obj.bz2: New file.
* testsuite/binutils-all/x86-64/x86-64.exp: Run PR binutils/33230
tests.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
(cherry picked from commit 8e885fece150ee97e5b0e78363e7fe9888ae9c29)

2 months agoAutomatic date update in version.in
GDB Administrator [Mon, 1 Sep 2025 00:03:00 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Sun, 31 Aug 2025 00:04:45 +0000 (00:04 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Sat, 30 Aug 2025 00:03:57 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Fri, 29 Aug 2025 00:04:27 +0000 (00:04 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Thu, 28 Aug 2025 00:03:11 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Wed, 27 Aug 2025 00:05:33 +0000 (00:05 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Tue, 26 Aug 2025 00:02:51 +0000 (00:02 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Mon, 25 Aug 2025 00:02:34 +0000 (00:02 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Sun, 24 Aug 2025 00:05:24 +0000 (00:05 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Sat, 23 Aug 2025 00:03:31 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Fri, 22 Aug 2025 00:03:02 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Thu, 21 Aug 2025 00:03:21 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Wed, 20 Aug 2025 00:03:54 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Tue, 19 Aug 2025 00:02:06 +0000 (00:02 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Mon, 18 Aug 2025 00:03:57 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Sun, 17 Aug 2025 00:03:14 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Sat, 16 Aug 2025 00:00:59 +0000 (00:00 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Fri, 15 Aug 2025 00:02:19 +0000 (00:02 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Thu, 14 Aug 2025 00:03:20 +0000 (00:03 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Wed, 13 Aug 2025 00:04:33 +0000 (00:04 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Tue, 12 Aug 2025 00:02:59 +0000 (00:02 +0000)] 
Automatic date update in version.in

2 months agoAutomatic date update in version.in
GDB Administrator [Mon, 11 Aug 2025 00:04:09 +0000 (00:04 +0000)] 
Automatic date update in version.in

2 months agolibctf: link: rejig lazy opening to not need weak symbols
Nick Alcock [Wed, 23 Jul 2025 13:20:26 +0000 (14:20 +0100)] 
libctf: link: rejig lazy opening to not need weak symbols

The ctf_link_add_ctf API function has a 'lazy opening' feature whereby,
if you pass in the file but not a CTF archive, the archive is opened
as late as possible during links.  This is valuable mostly in
cu-mapped links (a feature not accessible via GNU ld), where it
ensures that, rather than eventually needing memory for the original
link inputs, the smushed-together cu-mapped intermediate outputs,
*and* the final output, we only need enough memory for the smushed-
together outputs, the final output, and one input, since the inputs
can be closed immediately after they are smushed together.

(In GNU ld, the feature is useless because it loads all sections into
memory anyway.)

The lazy-opening feature uses libctf's ctf_open function, which uses
BFD: so it is not available in libctf-nobfd -- except that I thought I
had a cunning trick, and used a weak symbol so that if you linked
libctf-nobfd into your program and then also linked in bfd, the feature
stayed enabled.

This is silly -- if your program is licensed such that you can link in
BFD, you can just link in libctf.so and not bother with libctf-nobfd.so
in the first place.  Worse, the weak symbol usage broke MacOS builds,
since MacOS's system compiler uses a different means of introducing weak
symbols.  We could test for and use it, but this is the only place in
libctf to use weak symbols at all, and the feature of lazy-opening with
libctf-nobfd is so marginal we might as well drop it: it's almost
certain there are zero users, certainly fewer users than users of MacOS
with the system compiler.

While we're at it, simplify things by deleting the never-implemented
feature (not exposed in the API) to allow linking together raw buffers
of CTF data.  If we need it we can bring it back, but all it's doing
right now is complicating the code to no end at all.

libctf/
PR libctf/33194
* ctf-link.c (ctf_open): Delete weak pragma.
(ctf_link_add): Fuse with...
(ctf_link_add_ctf): ... this function.  Drop BUF, N args
and corresponding unimplemented feature warnings.  Only check
NOBFD to see whether lazy loading is available, not PIC as
well.
(ctf_link_lazy_open): Likewise.

(cherry picked from commit d3e582895b2038feb47b68f1e03efaa0d9dae325)