[Bug binutils/31687] [avr] Output of avr-objdump -P mem-usage missing .rodata

2024-05-20 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31687

--- Comment #4 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e8c83191cc6fee517d2029109c61981b4092439d

commit e8c83191cc6fee517d2029109c61981b4092439d
Author: Georg-Johann Lay 
Date:   Mon May 20 13:33:55 2024 +0100

Include .rodata size in avr-objdump -P mem-usage.

  PR 31687

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31704] [avr] Support avr-objdump -P avr-deviceinfo

2024-05-20 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31704

--- Comment #2 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f65d4a2f81060e58d86616e8773fb0af38cab33b

commit f65d4a2f81060e58d86616e8773fb0af38cab33b
Author: Georg-Johann Lay 
Date:   Mon May 20 12:12:10 2024 +0100

Let avr-objdump show .note.gnu.avr.deviceinfo

  PR 31704

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31733] [RISCV] Generating a wrong initial CFI instruction

2024-05-19 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31733

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Nelson Chu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=3ce12d6d4adb0e3dbdf90628a3e0d37a6ea21512

commit 3ce12d6d4adb0e3dbdf90628a3e0d37a6ea21512
Author: Sung-hun Kim 
Date:   Mon May 13 17:11:49 2024 +0900

RISC-V: PR31733, Change initial CFI operation from DW_CFA_def_cfa_register
to DW_CFA_def_cfa

The DWARF specification (especially, DWARF4 and 5 [1,2]) states that
DW_CFA_def_cfa_register cannot be used as the first CFI operation.
It said DW_CFA_def_cfa_register as follows:

  ... This operation is valid only if the current CFA rule is defined
  to use a register and offset.

So, DW_CFA_def_cfa_register can be used after that other definition
operation such as DW_CFA_def_cfa is called. However, the current gas
code emits DW_CFA_def_cfa_register as an initial CFI operation for RISCV.

In the libgcc, the unwinding function does not care about it, so it can
unwind the call stack. However, on the third party library such as
libunwindstack in Android, it causes a fatal error.

This patch changes the initial CFI operation to DW_CFA_def_cfa with
offset 0. It works as same as the previous one, but it does not have
any limitation so it satisfies the DWARF spec. This change resolves
the compatibility issue while preserving the original behaviour.

[1] DWARF4 specification, https://dwarfstd.org/doc/DWARF4.pdf
[2] DWARF5 specification, https://dwarfstd.org/doc/DWARF5.pdf

Signed-off-by: Sung-hun Kim 
Reviewed-By: Andrew Burgess 
Approved-By: Nelson Chu 

gas/
PR 31733
config/tc-riscv.c (riscv_cfi_frame_initial_instructions): Use
DW_CFA_def_cfa rather than DW_CFA_def_cfa_register.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gprofng/31123] improvements to hardware event implementation

2024-05-17 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31123

--- Comment #2 from Sourceware Commits  ---
The master branch has been updated by Vladimir Mezentsev
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=663741df74f975ca00de84ba17d2cd8417bb1d03

commit 663741df74f975ca00de84ba17d2cd8417bb1d03
Author: Vladimir Mezentsev 
Date:   Mon Apr 29 20:21:50 2024 -0700

gprofng: remove old interface with libcpc

interface with libcpc was used on Solaris.
gprofng doesn't support profiling on Solaris.
I removed this old code and other unused macros and variables.

gprofng/ChangeLog
2024-04-29  Vladimir Mezentsev  

PR gprofng/31123
* common/hwcdrv.c: remove old interface with libcpc.
* common/hwcdrv.h: Likewise.
* common/hwcentry.h: Likewise.
* common/hwcfuncs.c: Likewise.
* common/hwcfuncs.h: Likewise.
* common/hwctable.c: Likewise.
* src/Dbe.cc: Likewise.
* src/collctrl.cc: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gprofng/31123] improvements to hardware event implementation

2024-05-17 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31123

--- Comment #3 from Sourceware Commits  ---
The master branch has been updated by Vladimir Mezentsev
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ee7af0e7107e918d37bd2686fea1db8f88d2242a

commit ee7af0e7107e918d37bd2686fea1db8f88d2242a
Author: Vladimir Mezentsev 
Date:   Thu May 16 21:00:51 2024 -0700

gprofng: add hardware counters for AMD Zen3

Historically, we have used several APIs (perfctr, libcpc, perf_event_open)
for profiling.
For each hardware we have several tables of hardware counters.
Some information is duplicated in these tables.
Some of the information is no longer used.
I did not touch the existing hwc tables.
I added a new hwc table for an AMD Zen3 machine.

ChangeLog
2024-05-16  Vladimir Mezentsev  

PR gprofng/31123
* common/core_pcbe.c (core_pcbe_get_events): Add new argument.
* common/hwc_cpus.h: New constants for AMD hardware.
* common/hwcdrv.c: Add new argument to hwcdrv_get_descriptions.
Clean up the code.
* common/hwcdrv.h: Likewise.
* common/hwcfuncs.c (hwcdrv_get_descriptions): Add new argument.
* common/hwctable.c: Add the hwc table for AMD Zen3.
* src/hwc_amd_zen3.h: New file.
* common/opteron_pcbe.c: Add new argument to opt_pcbe_get_events.
* src/collctrl.cc: Remove unused variable.
* src/collctrl.h: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31735] [binutils, readelf] debug_str_offsets used, should use debug_str_offsets.dwo

2024-05-15 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31735

--- Comment #5 from Sourceware Commits  ---
The master branch has been updated by Tom de Vries :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e548840a038fd6e6bb37a3fb0a14fe4a4ad8ada6

commit e548840a038fd6e6bb37a3fb0a14fe4a4ad8ada6
Author: Tom de Vries 
Date:   Wed May 15 09:45:55 2024 +0200

[binutils/readelf] Fix handling of DW_MACRO_define_strx in dwo file

When printing a DW_MACRO_define_strx entry in a .debug_macro.dwo section,
we
run into:
...
 DW_MACRO_define_strx lineno : 0 macro : 
...

Fix this in display_debug_macro by passing the correct dwo argument to a
fetch_indexed_string call.

That works fine for readelf -w, with with readelf -wm we have:
...
 DW_MACRO_define_strx lineno : 0 macro : 
...

Fix this in display_debug_macro by doing load_debug_section_with_follow for
str_dwo / str_index_dwo sections instead of str / str_index sections when
handling .debug_macro.dwo.

PR 31735

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31734] [binutils, readelf] dwarf4 .debug_str_offsets section printed incorrectly

2024-05-15 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31734

--- Comment #5 from Sourceware Commits  ---
The master branch has been updated by Tom de Vries :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7e4f1f4bc7ffe26524a6eb0685bd22863cdfde1e

commit 7e4f1f4bc7ffe26524a6eb0685bd22863cdfde1e
Author: Tom de Vries 
Date:   Wed May 15 09:45:55 2024 +0200

[binutils/readelf] Fix printing of dwarf4 .debug_str_offsets.dwo

When compiling a hello world with dwarf4 split dwarf:
...
$ gcc -gdwarf-4 -gsplit-dwarf hello.c -save-temps -dA
...
we have in a-hello.s these three initial entries in .debug_str_offsets:
...
.section.debug_str_offsets.dwo,"e",@progbits
.4byte  0   // indexed string 0x0: short int
.4byte  0xa // indexed string 0x1: /home/vries/binutils
.4byte  0x1f// indexed string 0x2: main
...
but "readelf -ws a.out" starts at the third entry:
...
Contents of the .debug_str_offsets.dwo section (loaded from a-hello.dwo):

Length: 0x30
   Index   Offset [String]
   0   main
...

This is a regression since commit 407115429b3 ("Modified changes for
split-dwarf and dwarf-5."), which introduced a variable
debug_str_offsets_hdr_len in display_debug_str_offsets.

Fix this by setting display_debug_str_offsets to 0 for the dwarf4 case.

PR 31734

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31738] Improve objdump -p output of PE Import and Export Tables

2024-05-14 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31738

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4ac16d6607c045d2c4fa4b3712eb8f617af09e1b

commit 4ac16d6607c045d2c4fa4b3712eb8f617af09e1b
Author: Pali Roh?r 
Date:   Tue May 14 16:50:32 2024 +0100

Improve objdump -p output of PE Import and Export Tables

  PR 31738

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31692] objdump fails .debug_info size check for compressed debug information

2024-05-10 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31692

--- Comment #4 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ad658482c1e4feec4ac99c8e7df17ff78d0c2996

commit ad658482c1e4feec4ac99c8e7df17ff78d0c2996
Author: Alan Modra 
Date:   Fri May 10 22:15:06 2024 +0930

Re: PR31692, objdump fails .debug_info size check

The fuzzers found a hole.  bfd_section_size_insane doesn't check
!SEC_HAS_CONTENTS sections against file size for obvious reasons,
which allows fuzzed debug sections to be stupidly large.  Real debug
sections of course always have contents.

PR 31692
* objdump.c (load_specific_debug_section): Don't allow sections
without contents.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31722] [binutils/readelf] Missing eol in warning string index of converts to an offset of which is too big for section

2024-05-10 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31722

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=2b34e06765779335cef45a579e7a5698e198472b

commit 2b34e06765779335cef45a579e7a5698e198472b
Author: Nick Clifton 
Date:   Fri May 10 13:22:58 2024 +0100

Add missing \n to the end of warning messages in dwarf.c.

  PR 31722

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31710] Segmentation fault using wrapping and debug information

2024-05-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31710

--- Comment #3 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=1509f0c231854b2fd3556d77d6be1f98301bf8a3

commit 1509f0c231854b2fd3556d77d6be1f98301bf8a3
Author: H.J. Lu 
Date:   Wed May 8 06:22:20 2024 -0700

ld: Add PR ld/31710 tests

PR ld/31710
* testsuite/ld-elf/wrap.exp: Run ld/31710 tests.
* testsuite/ld-elf/wrap2.h: New file.
* testsuite/ld-elf/wrap2a.c: Likewise.
* testsuite/ld-elf/wrap2b.c: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31710] Segmentation fault using wrapping and debug information

2024-05-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31710

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=43bb6c0e087b6fd46c0b347d2b5678acb5c68c85

commit 43bb6c0e087b6fd46c0b347d2b5678acb5c68c85
Author: Nick Clifton 
Date:   Wed May 8 13:42:22 2024 +0100

Fix RELOC_FOR_GLOBAL_SYMBOLS macro so that it can cope with user defined
symbols that start with __wrap_.

  PR 31710

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31692] objdump fails .debug_info size check for compressed debug information

2024-05-02 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31692

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=635d05b88f4823f46ef1ddbb3d438db16c0f6e71

commit 635d05b88f4823f46ef1ddbb3d438db16c0f6e71
Author: Alan Modra 
Date:   Thu May 2 19:02:48 2024 +0930

PR31692, objdump fails .debug_info size check

PR 31692
* objdump.c (load_specific_debug_section): Replace bfd_get_size
check with bfd_section_size_insane.  Call free_debug_section
after printing error messages.  Set section->start NULL when
freeing.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/29517] DWARF subprograms output by gas-2.39 have a 'void' return type

2024-05-02 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=29517

--- Comment #8 from Sourceware Commits  ---
The master branch has been updated by Tom de Vries :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=5ce0e02478cc79a260c7e29822450284a32b9b12

commit 5ce0e02478cc79a260c7e29822450284a32b9b12
Author: Tom de Vries 
Date:   Thu May 2 09:34:46 2024 +0200

[gdb/symtab] Work around PR gas/29517, dwarf2 case

In commit 1d45d90934b ("[gdb/symtab] Work around PR gas/29517") we added a
workaround for PR gas/29517.

The problem is present in gas version 2.39, and fixed in 2.40, so the
workaround is only active for gas version == 2.39.

However, the problem in gas is only fixed for dwarf version >= 3, which
supports DW_TAG_unspecified_type.

Fix this by also activating the workaround for dwarf version == 2.

Tested on x86_64-linux.

Approved-by: Kevin Buettner 

PR symtab/31689
https://sourceware.org/bugzilla/show_bug.cgi?id=31689

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/29823] ld riscv: undefined elf_backend_obj_attrs_handle_unknown causes segfault when merging .riscv.attributes

2024-04-29 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=29823

--- Comment #2 from Sourceware Commits  ---
The master branch has been updated by Nelson Chu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7bd696ef499176253bfca0c1d16c4b8164ae836d

commit 7bd696ef499176253bfca0c1d16c4b8164ae836d
Author: Nelson Chu 
Date:   Fri Jun 9 08:47:17 2023 +0800

RISC-V: PR29823, defined the missing elf_backend_obj_attrs_handle_unknown.

bfd/
PR 29823
* elfnn-riscv.c (riscv_elf_obj_attrs_handle_unknown): New function.
(elf_backend_obj_attrs_handle_unknown): Defined to
riscv_elf_obj_attrs_handle_unknown.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/30783] objdump -dl and -WL disagree about initial state interpretation of the DWARF FSM

2024-04-29 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=30783

--- Comment #9 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d1765f5db3f9d1c75a3e1b06f0182db40afbbdc9

commit d1765f5db3f9d1c75a3e1b06f0182db40afbbdc9
Author: Nick Clifton 
Date:   Mon Apr 29 10:03:56 2024 +0100

Fix initiali state of DWARF v5 line number table in BFD library

  PR 30783

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31652] weak def in discarded comdat section becomes unreferenced undefweak with ld -r

2024-04-23 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31652

--- Comment #5 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=9b441c415c556e608e22cb9d16b500992a972b0c

commit 9b441c415c556e608e22cb9d16b500992a972b0c
Author: Olivier Hainque 
Date:   Mon Apr 22 02:50:28 2024 -0300

bfd: Remove duplicate word in elf-vxworks.c

PR ld/31652
* elf-vxworks.c  (elf_vxworks_emit_relocs): Drop duplicate word.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/14493] "strip" breaks .SUNW_ldynsym section on illumos

2024-04-23 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=14493

--- Comment #35 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6c2119acf78b4a48caa918c1d63aac7a64a19c82

commit 6c2119acf78b4a48caa918c1d63aac7a64a19c82
Author: H.J. Lu 
Date:   Tue Apr 23 07:07:51 2024 -0700

objcopy.c: Fix bfd_copy_private_symbol_data on 32-bit hosts

Use long with bfd_copy_private_symbol_data to fix

.../binutils/objcopy.c: In
function âcopy_objectâ:
.../binutils/objcopy.c:3383:17: error: comparison of integer expressions of
different signedness: âunsigned intâ and âlong intâ
[-Werror=sign-compare]
 3383 |   for (i = 0; i < symcount; i++)
  | ^

on 32-bit hosts.

PR binutils/14493
* objcopy.c (copy_object): Use long with
bfd_copy_private_symbol_data.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31667] objcopy/strip corrupts solaris binaries

2024-04-23 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31667

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e79ee36b5ae4b60853e91896758bade48e804030

commit e79ee36b5ae4b60853e91896758bade48e804030
Author: Alan Modra 
Date:   Mon Apr 22 19:08:51 2024 +0930

PR31667, objcopy/strip corrupts solaris binaries

Using want_p_paddr_set_to_zero in commit 45d92439aebd was wrong.  Even
solaris targets don't have want_p_paddr_set_to_zero, but we should
handle them at least somewhat reasonably.

PR 31667
* elf.c (IS_SECTION_IN_INPUT_SEGMENT): Remove bed arg, add
paddr_valid.  Don't use bed->want_p_paddr_set_to_zero.
(INCLUDE_SECTION_IN_SEGMENT): Likewise.
(rewrite_elf_program_header): Adjust to suit.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/14493] "strip" breaks .SUNW_ldynsym section on illumos

2024-04-23 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=14493

--- Comment #33 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e13e2ba45fe23ec4e6d7335b0834290e61605d4d

commit e13e2ba45fe23ec4e6d7335b0834290e61605d4d
Author: Alan Modra 
Date:   Mon Apr 22 09:30:38 2024 +0930

use copy_private_symbol_data in objcopy

osympp appearing twice here is not a bug.

PR 14493
* objcopy.c (copy_object): Run the symbols through
bfd_copy_private_symbol_data.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/14493] "strip" breaks .SUNW_ldynsym section on illumos

2024-04-23 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=14493

--- Comment #34 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ef1c830f003acaf149bb9ee230be0d0067e1855c

commit ef1c830f003acaf149bb9ee230be0d0067e1855c
Author: Alan Modra 
Date:   Mon Apr 22 09:29:28 2024 +0930

ignore some symbols in elf.c:swap_out_syms

The reason behind this patch was noticing that generic ELF targets
fail to remove "bar" in the recently committed ld-elf/undefweak-1
test.  (Despite that, those targets pass the test due to it being too
strict when matching symbols.  "bar" gets turned into a local weak
defined absolute symbol.)

swap_out_syms currently drops local section syms that are defined in
discarded sections.  Extend that to also drop other symbols in
discarded sections too, even global symbols.  The linker goes to quite
a lot of effort to ensure globals in discarded section take a
definition from the kept linkonce or comdat group section.  So the
global sym change should only affect cases where something is quite
wrong about the set of linkonce or comdat group sections.  However
that change to elf_map_symbols meant we dropped _DYNAMIC_LINK /
_DYNAMIC_LINKING for mips, a global absolute symbol given STT_SECTION
type for some reason.  That problem is fixed by reverting the pr14493
change which is no longer needed due to a) BSF_SECTION_SYM_USED on
x86, and b) fixing objcopy to use copy_private_symbol_data.

bfd/
PR 14493
* elf.c (ignore_sym): Rename from ignore_section_sym.  Return
true for any symbol without a section or in a discarded section.
Revert pr14493 change.
(elf_map_symbols): Tidy.  Use ignore_sym on all symbols.
(swap_out_syms): Tidy.
ld/
* testsuite/ld-elf/undefweak-1.rd: Match any "bar".

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/14493] "strip" breaks .SUNW_ldynsym section on illumos

2024-04-23 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=14493

--- Comment #32 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6705e14a9943e48ccf0f4829a9c23d66b5b83aae

commit 6705e14a9943e48ccf0f4829a9c23d66b5b83aae
Author: Alan Modra 
Date:   Mon Apr 22 09:30:23 2024 +0930

copy_private_symbol_data

bfd_copy_private_symbol_data is a bfd function that appeared in
commit 89665c8562da a long time ago, but seemingly wasn't used
anywhere until Jan added it to gas/symbols.c in commit 6a2b6326c21e.

The function is used to modify ELF symbol st_shndx for symbols defined
in odd sections like .symtab, so that they get the corresponding
section st_shndx in an output file.  This patch fixes some bitrot in
the function.  After commit c03551323c04 which introduced
output_elf_obj_tdata, elf_strtab_sec and elf_shstrtab_sec will
segfault if used on an input bfd.

PR 14493
* elf.c (_bfd_elf_copy_private_symbol_data): Don't use
elf_strtab_sec and elf_shstrtab_sec.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31652] weak def in discarded comdat section becomes unreferenced undefweak with ld -r

2024-04-19 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31652

--- Comment #4 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=9cf3c87e166b2f3728ae5c50c501f64f385e349e

commit 9cf3c87e166b2f3728ae5c50c501f64f385e349e
Author: Alan Modra 
Date:   Fri Apr 19 16:35:30 2024 +0930

Re: elf: Strip unreferenced weak undefined symbols

PR ld/31652
* elflink.c (_bfd_elf_link_output_relocs): Don't segfault
on NULL rel_hash.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31652] weak def in discarded comdat section becomes unreferenced undefweak with ld -r

2024-04-18 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31652

--- Comment #2 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=eebad48ef858be83d754a6b1326133e51d36

commit eebad48ef858be83d754a6b1326133e51d36
Author: H.J. Lu 
Date:   Thu Apr 18 05:28:56 2024 -0700

elf: Strip unreferenced weak undefined symbols

Linker will resolve an undefined symbol only if it is referenced by
relocation.  Unreferenced weak undefined symbols serve no purpose.
Weak undefined symbols appear in the dynamic symbol table only when they
are referenced by dynamic relocation.  Mark symbols with relocation and
strip undefined weak symbols if they don't have relocation and aren't
in the dynamic symbol table.

bfd/

PR ld/31652
* elf-bfd.h (elf_link_hash_entry): Add has_reloc.
* elf-vxworks.c (elf_vxworks_emit_relocs): Set has_reloc.
* elflink.c (_bfd_elf_link_output_relocs): Likewise.
(elf_link_output_extsym): Strip undefined weak symbols if they
don't have relocation and aren't in the dynamic symbol table.

ld/

PR ld/31652
* testsuite/ld-elf/elf.exp: Run undefweak tests.
* testsuite/ld-elf/undefweak-1.rd: New file.
* testsuite/ld-elf/undefweak-1a.s: Likewise.
* testsuite/ld-elf/undefweak-1b.s: Likewise.
* testsuite/ld-x86-64/weakundef-1.nd: Likewise.
* testsuite/ld-x86-64/weakundef-1a.s: Likewise.
* testsuite/ld-x86-64/weakundef-1b.s: Likewise.
* testsuite/ld-x86-64/x86-64.exp: Run undefweak tests.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/30743] FAIL: ld-elf/now-3 for hppa64-*-linux* target

2024-04-18 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=30743

--- Comment #14 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=31d5afc19d98869aa13c3197f55b8a208fd19da2

commit 31d5afc19d98869aa13c3197f55b8a208fd19da2
Author: Nick Clifton 
Date:   Thu Apr 18 13:24:42 2024 +0100

HPPA64 linker: Do not force the generation of DT_FLAGS for Linux targets.

  PR 30743

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/21618] heap-buffer-overflow in bfd_getl32

2024-04-17 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21618

--- Comment #5 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ebf18671351d94185823d364b75369abc1baba31

commit ebf18671351d94185823d364b75369abc1baba31
Author: Alan Modra 
Date:   Wed Apr 17 22:28:23 2024 +0930

Re: Fix address violations when reading corrupt VMS records

Fixes error reports about the length of EEOM records produced by gas.

PR 21618
* vms-alpha.c (evax_bfd_print_emh): Don't read subtyp if short
record.  Consolidate error messages.
(evax_bfd_print_eeom): Allow length 10 record.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31644] [Regression] libstdc++prettyprinters/debug.[cc|cxx11.cc] failing to build - linker error

2024-04-16 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31644

--- Comment #14 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c2fbf57864a2da2ceda81706a54d125ef3fce0a7

commit c2fbf57864a2da2ceda81706a54d125ef3fce0a7
Author: H.J. Lu 
Date:   Tue Apr 16 15:48:21 2024 -0700

elf: Skip the archive if the symbol isn't referenced

Also skip the archive if the symbol isn't referenced by a regular object.

bfd/

PR ld/31644
* elflink.c (elf_link_add_archive_symbols): Also skip the archive
if the symbol isn't referenced by a regular object.

ld/

PR ld/31644
* testsuite/ld-plugin/lto.exp: Run PR ld/31644 tests.
* testsuite/ld-plugin/pr31644a.c: New test.
* testsuite/ld-plugin/pr31644b.c: Likewise.
* testsuite/ld-plugin/pr31644c.c: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31255] keyword arguments do not work with .altmacro

2024-04-16 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31255

--- Comment #3 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=8c8de179c20bf5225a08599bee21a60fcde898fc

commit 8c8de179c20bf5225a08599bee21a60fcde898fc
Author: Nick Clifton 
Date:   Tue Apr 16 12:06:08 2024 +0100

Gas Doc: Update example of how .altmacro affects the interpretation of
macro arguments.

  PR 31255

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31527] gdb is not working for UNC path

2024-04-15 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31527

--- Comment #15 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=9dd918142787246ea7ed53494d9cbc6b51486133

commit 9dd918142787246ea7ed53494d9cbc6b51486133
Author: Nick Clifton 
Date:   Mon Apr 15 16:42:15 2024 +0100

Remove dependency upon shlwapi library when building BFD for Windows/MinGW
environments.

  PR 31527

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31540] objcopy, ELF_SECTION_IN_SEGMENT_1 section to segment mapping seems wrong

2024-04-15 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31540

--- Comment #5 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ccbf42ec88f3e8bbb74dbdc1d6c9da3a9d805cff

commit ccbf42ec88f3e8bbb74dbdc1d6c9da3a9d805cff
Author: Vijay Shankar 
Date:   Mon Apr 15 16:27:21 2024 +0100

When mapping sections to segments ensure that we do not add sections whose
VMA->LMA relationship does not match the relationship of earlier sections in
the segment.

  PR 31540

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31255] keyword arguments do not work with .altmacro

2024-04-12 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31255

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=99daf56f4b4bf831bb29bffb79f2172f1b316cb9

commit 99daf56f4b4bf831bb29bffb79f2172f1b316cb9
Author: Nick Clifton 
Date:   Fri Apr 12 16:51:51 2024 +0100

Update description of macro keyword argument assignment in assembler
documentation.

  PR 31255

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31561] AArch64 gas test case "SME extension (ZERO)" fails on s390x

2024-04-09 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31561

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Jens Remus :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6f3cf71845e68409724aef1cfef3b5a44beecf53

commit 6f3cf71845e68409724aef1cfef3b5a44beecf53
Author: Jens Remus 
Date:   Tue Apr 9 17:21:53 2024 +0200

aarch64: Treat operand "SME list of ZA tiles" as immediate (PR 31561)

The AArch64 instruction table (aarch64-tbl.h) defines the operand
"SME list of ZA tiles" (SME_list_of_64bit_tiles) as immediate. During
assembly it is correctly encoded as immediate value (imm.value) in
parse_operands. During disassembly it is first correctly decoded as
immediate value (imm.value) in aarch64_ext_imm called by
aarch64_extract_operand, but then erroneously treated as register
number (reg.regno) in aarch64_print_operand.

This resolves the assembler test case "SME extension (ZERO)" to
erroneously fail on s390. On AArch64 - being little-endian - the struct
aarch64_opnd_info union fields reg.regno and imm.value share their
least-significant bits. On s390 - being big-endian - they do not.

opcodes/
PR binutils/31561
* aarch64-opc.c: Treat operand "SME list of ZA tiles" as
immediate.

Bug: https://sourceware.org/PR31561
Signed-off-by: Jens Remus 
Acked-by: Nick Clifton 

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31615] Hang when linking vorbis-tools

2024-04-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31615

--- Comment #16 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d05e1a4a6d438c11af5a2b9b0ac88a74727b5f0f

commit d05e1a4a6d438c11af5a2b9b0ac88a74727b5f0f
Author: H.J. Lu 
Date:   Sun Apr 7 19:52:49 2024 -0700

ld: Add PR ld/31615 tests

PR ld/31615
* testsuite/ld-plugin/lto.exp: Run ld/31615 tests.
* testsuite/ld-plugin/pr31615.ver: New file.
* testsuite/ld-plugin/pr31615a.c: Likewise.
* testsuite/ld-plugin/pr31615b.c: Likewise.
* testsuite/ld-plugin/pr31615c.c: Likewise.
* testsuite/ld-plugin/pr31615d.c: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/26978] Inconsistency for defined foo@v1 and foo@@v1

2024-04-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=26978

--- Comment #12 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by Alan Modra
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6224493e457e72b11818c87cdc112bdb0fee5f81

commit 6224493e457e72b11818c87cdc112bdb0fee5f81
Author: Alan Modra 
Date:   Mon Apr 8 08:16:20 2024 +0930

Re: PR26978, Inconsistency for strong foo@v1 and weak foo@@v1

Commit 726d7d1ecf opened a hole that allowed a u.i.link loop to be
created, resulting in _bfd_generic_link_add_one_symbol never
returning.  Fix that.  Note that the MIND case handles two types of
redefinition.  For a new indirect symbol we'll have string non-NULL.
For a new def, string will be NULL.  So moving the string comparison
earlier would work.  However, we've already looked up inh in the first
case so can dispense with name comparisons.  Either way, for a new def
we'll get to the defweak test and possibly cycle.  Which is what we
want here.

PR 31615
PR 26978
* linker.c (_bfd_generic_link_add_one_symbol ): Test for
exactly matching indirect symbols before cycling on a defweak.

(cherry picked from commit 248b6326a49ed49e2f627d3bddbac514a074bac0)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31615] Hang when linking vorbis-tools

2024-04-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31615

--- Comment #15 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by Alan Modra
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6224493e457e72b11818c87cdc112bdb0fee5f81

commit 6224493e457e72b11818c87cdc112bdb0fee5f81
Author: Alan Modra 
Date:   Mon Apr 8 08:16:20 2024 +0930

Re: PR26978, Inconsistency for strong foo@v1 and weak foo@@v1

Commit 726d7d1ecf opened a hole that allowed a u.i.link loop to be
created, resulting in _bfd_generic_link_add_one_symbol never
returning.  Fix that.  Note that the MIND case handles two types of
redefinition.  For a new indirect symbol we'll have string non-NULL.
For a new def, string will be NULL.  So moving the string comparison
earlier would work.  However, we've already looked up inh in the first
case so can dispense with name comparisons.  Either way, for a new def
we'll get to the defweak test and possibly cycle.  Which is what we
want here.

PR 31615
PR 26978
* linker.c (_bfd_generic_link_add_one_symbol ): Test for
exactly matching indirect symbols before cycling on a defweak.

(cherry picked from commit 248b6326a49ed49e2f627d3bddbac514a074bac0)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31615] Hang when linking vorbis-tools

2024-04-07 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31615

--- Comment #14 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=248b6326a49ed49e2f627d3bddbac514a074bac0

commit 248b6326a49ed49e2f627d3bddbac514a074bac0
Author: Alan Modra 
Date:   Mon Apr 8 08:16:20 2024 +0930

Re: PR26978, Inconsistency for strong foo@v1 and weak foo@@v1

Commit 726d7d1ecf opened a hole that allowed a u.i.link loop to be
created, resulting in _bfd_generic_link_add_one_symbol never
returning.  Fix that.  Note that the MIND case handles two types of
redefinition.  For a new indirect symbol we'll have string non-NULL.
For a new def, string will be NULL.  So moving the string comparison
earlier would work.  However, we've already looked up inh in the first
case so can dispense with name comparisons.  Either way, for a new def
we'll get to the defweak test and possibly cycle.  Which is what we
want here.

PR 31615
PR 26978
* linker.c (_bfd_generic_link_add_one_symbol ): Test for
exactly matching indirect symbols before cycling on a defweak.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/26978] Inconsistency for defined foo@v1 and foo@@v1

2024-04-07 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=26978

--- Comment #11 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=248b6326a49ed49e2f627d3bddbac514a074bac0

commit 248b6326a49ed49e2f627d3bddbac514a074bac0
Author: Alan Modra 
Date:   Mon Apr 8 08:16:20 2024 +0930

Re: PR26978, Inconsistency for strong foo@v1 and weak foo@@v1

Commit 726d7d1ecf opened a hole that allowed a u.i.link loop to be
created, resulting in _bfd_generic_link_add_one_symbol never
returning.  Fix that.  Note that the MIND case handles two types of
redefinition.  For a new indirect symbol we'll have string non-NULL.
For a new def, string will be NULL.  So moving the string comparison
earlier would work.  However, we've already looked up inh in the first
case so can dispense with name comparisons.  Either way, for a new def
we'll get to the defweak test and possibly cycle.  Which is what we
want here.

PR 31615
PR 26978
* linker.c (_bfd_generic_link_add_one_symbol ): Test for
exactly matching indirect symbols before cycling on a defweak.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31606] [2.43 Regression] "shld %rsi,%rdx,%rax" no longer works

2024-04-06 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31606

--- Comment #3 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=cca46dea4d09fc9d9896e952242b3e8f5baa506a

commit cca46dea4d09fc9d9896e952242b3e8f5baa506a
Author: H.J. Lu 
Date:   Sat Apr 6 05:02:56 2024 -0700

Revert "x86: Restore APX shift-double instructions with omitted shift
count"

This reverts commit c2d698fe03a6092d58a07de96068b87836daced0.

GCC 14 has been changed to use explicit shift count in shift-double
instructions by the commit:

06a7e7514af x86: Use explicit shift count in double-precision shifts

gas/

PR gas/31606
* testsuite/gas/i386/x86-64-apx-ndd-wig.d: Updated.
* testsuite/gas/i386/x86-64-apx-ndd.d: Likewise.
* testsuite/gas/i386/x86-64-apx-ndd.s: Remove tests for APX
shift-double instructions with omitted shift count.

opcodes/

PR gas/31606
* i386-opc.tbl: Remove APX shift-double instructions with
omitted shift count.
* i386-tbl.h: Regenerated.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31482] The first definition in shared object and archive is ignored

2024-04-06 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31482

--- Comment #12 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e7e05a9dd0c93038fdd5ed1904ca660e52beabdc

commit e7e05a9dd0c93038fdd5ed1904ca660e52beabdc
Author: Alan Modra 
Date:   Sat Apr 6 15:49:44 2024 +1030

Don't have first_hash entries of strings that can be freed.

Seen running "LTO 1" under valgrind.
==1443263== Invalid read of size 1
==1443263==at 0x484CFE4: strcmp (vg_replace_strmem.c:939)
==1443263==by 0x56E16C: bfd_hash_lookup (hash.c:564)
==1443263==by 0x5A3C8F: elf_link_add_to_first_hash (elflink.c:4316)
==1443263==by 0x5AE60F: elf_link_add_object_symbols (elflink.c:5663)
==1443263==by 0x5B0672: bfd_elf_link_add_symbols (elflink.c:6333)
==1443263==by 0x41448F: load_symbols (ldlang.c:3129)
==1443263==by 0x4149D8: open_input_bfds (ldlang.c:3621)
==1443263==by 0x414968: open_input_bfds (ldlang.c:3569)
==1443263==by 0x4166A2: lang_process (ldlang.c:8162)
==1443263==by 0x4194D5: main (ldmain.c:504)
==1443263==  Address 0x525e230 is 192 bytes inside a block of size 4,064
free'd
==1443263==at 0x484810F: free (vg_replace_malloc.c:974)
==1443263==by 0x8D4D87: objalloc_free_block (objalloc.c:248)
==1443263==by 0x5AEACC: elf_link_add_object_symbols (elflink.c:5790)
==1443263==by 0x5B0672: bfd_elf_link_add_symbols (elflink.c:6333)
==1443263==by 0x41448F: load_symbols (ldlang.c:3129)
==1443263==by 0x4149D8: open_input_bfds (ldlang.c:3621)
==1443263==by 0x414968: open_input_bfds (ldlang.c:3569)
==1443263==by 0x4166A2: lang_process (ldlang.c:8162)
==1443263==by 0x4194D5: main (ldmain.c:504)

PR ld/31482
PR ld/31489
* elflink.c (elf_link_add_to_first_hash): Add "copy" param.
(elf_link_add_object_symbols): Flag that name must be copied
when appending version string to symbol name.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31489] --as-needed doesn't work with references to builtin functions

2024-04-06 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31489

--- Comment #4 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e7e05a9dd0c93038fdd5ed1904ca660e52beabdc

commit e7e05a9dd0c93038fdd5ed1904ca660e52beabdc
Author: Alan Modra 
Date:   Sat Apr 6 15:49:44 2024 +1030

Don't have first_hash entries of strings that can be freed.

Seen running "LTO 1" under valgrind.
==1443263== Invalid read of size 1
==1443263==at 0x484CFE4: strcmp (vg_replace_strmem.c:939)
==1443263==by 0x56E16C: bfd_hash_lookup (hash.c:564)
==1443263==by 0x5A3C8F: elf_link_add_to_first_hash (elflink.c:4316)
==1443263==by 0x5AE60F: elf_link_add_object_symbols (elflink.c:5663)
==1443263==by 0x5B0672: bfd_elf_link_add_symbols (elflink.c:6333)
==1443263==by 0x41448F: load_symbols (ldlang.c:3129)
==1443263==by 0x4149D8: open_input_bfds (ldlang.c:3621)
==1443263==by 0x414968: open_input_bfds (ldlang.c:3569)
==1443263==by 0x4166A2: lang_process (ldlang.c:8162)
==1443263==by 0x4194D5: main (ldmain.c:504)
==1443263==  Address 0x525e230 is 192 bytes inside a block of size 4,064
free'd
==1443263==at 0x484810F: free (vg_replace_malloc.c:974)
==1443263==by 0x8D4D87: objalloc_free_block (objalloc.c:248)
==1443263==by 0x5AEACC: elf_link_add_object_symbols (elflink.c:5790)
==1443263==by 0x5B0672: bfd_elf_link_add_symbols (elflink.c:6333)
==1443263==by 0x41448F: load_symbols (ldlang.c:3129)
==1443263==by 0x4149D8: open_input_bfds (ldlang.c:3621)
==1443263==by 0x414968: open_input_bfds (ldlang.c:3569)
==1443263==by 0x4166A2: lang_process (ldlang.c:8162)
==1443263==by 0x4194D5: main (ldmain.c:504)

PR ld/31482
PR ld/31489
* elflink.c (elf_link_add_to_first_hash): Add "copy" param.
(elf_link_add_object_symbols): Flag that name must be copied
when appending version string to symbol name.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31482] The first definition in shared object and archive is ignored

2024-04-05 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31482

--- Comment #11 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=816fd3dced1b2e94789b6d7d1d1fab1988e8e05d

commit 816fd3dced1b2e94789b6d7d1d1fab1988e8e05d
Author: H.J. Lu 
Date:   Fri Apr 5 16:37:58 2024 -0700

elf: Use elf_link_first_hash_entry for first_hash

Add elf_link_first_hash_entry and use it for first_hash.  Free first_hash
before freeing the main hash table.

PR ld/31482
PR ld/31489
* elf-bfd.h (elf_link_hash_table): Change first_hash to
bfd_hash_table.
* elflink.c (elf_link_first_hash_entry): New.
(elf_link_first_hash_newfunc): Likewise.
(elf_link_add_to_first_hash): Updated.
(elf_link_add_object_symbols): Initialize first_hash with
elf_link_first_hash_newfunc.
(elf_link_add_object_symbols): Updated.
(elf_link_add_archive_symbols): Likewise.
(_bfd_elf_link_hash_table_free): Free first_hash before freeing
the main hash table.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31489] --as-needed doesn't work with references to builtin functions

2024-04-05 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31489

--- Comment #3 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=816fd3dced1b2e94789b6d7d1d1fab1988e8e05d

commit 816fd3dced1b2e94789b6d7d1d1fab1988e8e05d
Author: H.J. Lu 
Date:   Fri Apr 5 16:37:58 2024 -0700

elf: Use elf_link_first_hash_entry for first_hash

Add elf_link_first_hash_entry and use it for first_hash.  Free first_hash
before freeing the main hash table.

PR ld/31482
PR ld/31489
* elf-bfd.h (elf_link_hash_table): Change first_hash to
bfd_hash_table.
* elflink.c (elf_link_first_hash_entry): New.
(elf_link_first_hash_newfunc): Likewise.
(elf_link_add_to_first_hash): Updated.
(elf_link_add_object_symbols): Initialize first_hash with
elf_link_first_hash_newfunc.
(elf_link_add_object_symbols): Updated.
(elf_link_add_archive_symbols): Likewise.
(_bfd_elf_link_hash_table_free): Free first_hash before freeing
the main hash table.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31482] The first definition in shared object and archive is ignored

2024-04-05 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31482

--- Comment #9 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c0419c024bf922128131671e40de0aed736e38ed

commit c0419c024bf922128131671e40de0aed736e38ed
Author: H.J. Lu 
Date:   Thu Apr 4 18:46:40 2024 -0700

elf: Always honor the first definition in shared object and archive

GCC doesn't put builtin function symbol references, which are defined in
the shared C library, in the IR symbol table.  When linker rescans shared
objects and archives for newly added symbol references generated from the
IR inputs, it skips definitions of the builtin functions in shared
objects and archives.

Add first_hash to elf_link_hash_table to track unreferenced definitions
defined first in shared objects and archives.  Always use them to resolve
any references.

bfd/

PR ld/31482
PR ld/31489
* elf-bfd.h (elf_link_hash_table): Add first_hash.
* elflink.c (elf_link_add_to_first_hash): New function.
(elf_link_add_object_symbols): Initialize first_hash for an IR
input.  Always use the first definition in shared object.  Add
the first unreferenced dynamic definition to first_hash.
(_bfd_elf_archive_symbol_lookup): Add the first unreferenced
definition to first_hash..
(elf_link_add_archive_symbols): Use the symbol definition in
archive if symbol is defined first in this archive.
(_bfd_elf_link_hash_table_free): Also free first_hash.

ld/

PR ld/31482
PR ld/31489
* testsuite/ld-plugin/lto.exp: Add PR ld/31482 and PR ld/31489
tests.
* testsuite/ld-elf/pr31482a-no-lto.c: New file.
* testsuite/ld-elf/pr31482b-no-lto.c: Likewise.
* testsuite/ld-elf/pr31482c-no-lto.c: Likewise.
* testsuite/ld-elf/pr31482d-no-lto.c: Likewise.
* testsuite/ld-plugin/pass1.out: Likewise.
* testsuite/ld-plugin/pr31482a.c: Likewise.
* testsuite/ld-plugin/pr31482b.c: Likewise.
* testsuite/ld-plugin/pr31482c.c: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31489] --as-needed doesn't work with references to builtin functions

2024-04-05 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31489

--- Comment #2 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c0419c024bf922128131671e40de0aed736e38ed

commit c0419c024bf922128131671e40de0aed736e38ed
Author: H.J. Lu 
Date:   Thu Apr 4 18:46:40 2024 -0700

elf: Always honor the first definition in shared object and archive

GCC doesn't put builtin function symbol references, which are defined in
the shared C library, in the IR symbol table.  When linker rescans shared
objects and archives for newly added symbol references generated from the
IR inputs, it skips definitions of the builtin functions in shared
objects and archives.

Add first_hash to elf_link_hash_table to track unreferenced definitions
defined first in shared objects and archives.  Always use them to resolve
any references.

bfd/

PR ld/31482
PR ld/31489
* elf-bfd.h (elf_link_hash_table): Add first_hash.
* elflink.c (elf_link_add_to_first_hash): New function.
(elf_link_add_object_symbols): Initialize first_hash for an IR
input.  Always use the first definition in shared object.  Add
the first unreferenced dynamic definition to first_hash.
(_bfd_elf_archive_symbol_lookup): Add the first unreferenced
definition to first_hash..
(elf_link_add_archive_symbols): Use the symbol definition in
archive if symbol is defined first in this archive.
(_bfd_elf_link_hash_table_free): Also free first_hash.

ld/

PR ld/31482
PR ld/31489
* testsuite/ld-plugin/lto.exp: Add PR ld/31482 and PR ld/31489
tests.
* testsuite/ld-elf/pr31482a-no-lto.c: New file.
* testsuite/ld-elf/pr31482b-no-lto.c: Likewise.
* testsuite/ld-elf/pr31482c-no-lto.c: Likewise.
* testsuite/ld-elf/pr31482d-no-lto.c: Likewise.
* testsuite/ld-plugin/pass1.out: Likewise.
* testsuite/ld-plugin/pr31482a.c: Likewise.
* testsuite/ld-plugin/pr31482b.c: Likewise.
* testsuite/ld-plugin/pr31482c.c: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31527] gdb is not working for UNC path

2024-04-05 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31527

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=eac88f3298491fdf2caa0d7dd97a3dde954b8b74

commit eac88f3298491fdf2caa0d7dd97a3dde954b8b74
Author: Zhiqing Xiong 
Date:   Fri Apr 5 09:41:40 2024 +0100

Add support for Windows network paths to the UNC support in
_bfd_real_open().

PR 31527

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31608] collect2: fatal error: ld terminated with signal 11 [Segmentation fault]

2024-04-04 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31608

--- Comment #6 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=37eac4810b66f165ed5bb837ac36c0eb9baba727

commit 37eac4810b66f165ed5bb837ac36c0eb9baba727
Author: H.J. Lu 
Date:   Thu Apr 4 18:05:57 2024 -0700

bfd: Munmap readonly memory after bfd_free_cached_info

Munmap readonly memory after bfd_free_cached_info which may use munmapped
readonly memory.

PR ld/31608
* opncls.c (_bfd_delete_bfd): Munmap readonly memory after
bfd_free_cached_info.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31606] [2.43 Regression] "shld %rsi,%rdx,%rax" no longer works

2024-04-04 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31606

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c2d698fe03a6092d58a07de96068b87836daced0

commit c2d698fe03a6092d58a07de96068b87836daced0
Author: H.J. Lu 
Date:   Thu Apr 4 13:12:12 2024 -0700

x86: Restore APX shift-double instructions with omitted shift count

Restore APX shift-double instructions with omitted shift count since
they are generated by GCC as shown in:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114590

gas/

PR gas/31606
* testsuite/gas/i386/x86-64-apx-ndd-wig.d: Updated.
* testsuite/gas/i386/x86-64-apx-ndd.d: Likewise.
* testsuite/gas/i386/x86-64-apx-ndd.s: Add tests for APX
shift-double instructions with omitted shift count.

opcodes/

PR gas/31606
* i386-opc.tbl: Restore APX shift-double instructions with
omitted shift count.
* i386-tbl.h: Regenerated.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/19977] [mips] gas writes incorrect addendum for %tprel_hi relocation

2024-04-04 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=19977

--- Comment #2 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f38e9921479a00b4e7a72a79088106859ec5fabc

commit f38e9921479a00b4e7a72a79088106859ec5fabc
Author: Alan Modra 
Date:   Sat Mar 2 08:10:34 2024 +1030

MIPS HI16 and LO16 reloc howtos

All the HI16 reloc howtos should have a rightshift of 16, and all the
LO16 relocs shouldn't complain on overflow.  This was correct for
R_MIPS_LO16 and R_MIPS_LO16 (at least on the howto_table_rel entries),
and corresponding MIPS16, MICROMIPS and MIPS64 relocs, but not on many
other HI16 and LO16 relocs.

While we're at it, fix the HIGHER and HIGHEST rightshift too.

These changes are necessary to support addends outside the range
[0,32767] when those addends are stored in section contents.  Note
that some of the reloc howtos changed here will always have zero
addends (GOT_HI16, CALL_HI16).  Those don't really need changing, but
use what is clearly correct for hi16 relocs anyway.

PR 19977
* elf32-mips.c: Correct rightshift for HI16, HIGHER and HIGHEST
reloc howtos.  Correct complain_on_overflow for LO16 relocs.
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31503] [hppa] Unsupported 14-bit PA 2.0 relocations for 32-bit (narrow) mode (elf32-hppa.c)

2024-04-03 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31503

--- Comment #16 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by John David Anglin
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d125f9675372b1ae01ceb1893c06ccb27bc7bf22

commit d125f9675372b1ae01ceb1893c06ccb27bc7bf22
Author: John David Anglin 
Date:   Mon Apr 1 23:00:52 2024 +

hppa: Implement PA 2.0 symbolic relocations for long displacements

The PA 2.0 architecture introduced several new load and store
instructions with long displacements.  These include floating
point loads and stores for word mode, and integer and floating
point loads and stores for double words.  Currently, ld does
not correctly support symbolic relocations for these instructions.

If these are used, ld applies the standard R_PARISC_DPREL14R
relocation and corrupts the instruction.  This change uses
bfd_hppa_insn2fmt to determine the correct relocation format.

We need to check the computed displacement as the immediate
value used in these instruction must be a multiple of 4 or 8
depending on whether the access is for a word or double word.

A misaligned offset can potentially occur if the symbol is not
properly aligned or if $global$ (the global pointer) is not
double word aligned.  $global$ is provided as a .data section
start symbol.  The patch adjusts elf.sc and hppalinux.sh to
align .data to a 8-byte boundary in non-shared and non-pie
links.

2024-04-01  John David Anglin  

PR ld/31503

bfd/ChangeLog:

* elf32-hppa.c (final_link_relocate): Output

ld/ChangeLog:

* emulparams/hppalinux.sh (DATA_SECTION_ALIGNMENT): Define.
* scripttempl/elf.sc: Align .data section to DATA_SECTION_ALIGNMENT
when relocating.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31466] It takes a long time to build Rust program with --no-keep-memory

2024-04-03 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31466

--- Comment #11 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=3428c771aef0cebe229ac0f02a654d2ef78f2427

commit 3428c771aef0cebe229ac0f02a654d2ef78f2427
Author: H.J. Lu 
Date:   Fri Mar 8 16:21:42 2024 -0800

elf: Always keep symbol table and relocation info for eh_frame

When --no-keep-memory is used, the symbol table and relocation info for
eh_frame are freed after they are retrieved for each text section in the
input object.  If an input object has many text sections, the same data
is retrieved and freed many times which can take a very long time.
Update _bfd_elf_gc_mark to keep the symbol table and relocation info for
eh_frame to avoid it.  Data to link the 3.5GB clang executable in LLVM
17 debug build on Linux/x86-64 with 32GB RAM is:

before  after   improvement
user86.31   86.44   -0.2%
system  8.778.631.6%
total   95.58   96.81   -1.3%
maximum set(GB) 13.113.10%
page faults 3024752 3028699 -1.3%

and data to link the 275M cc1plus executable in GCC 14 stage 1 build is:

user5.495.46-0.5%
system  0.730.730%
total   6.266.250.3%
maximum set(MB) 964 964 0%
page faults 235173  235796  -0.3%

The memory usage impact is minimum and the link time of the Rust binary
in

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

is reduced from 500+ seconds to 1.44 seconds, a 300x speedup.

PR ld/31466
* elflink.c (init_reloc_cookie): Add a bool argument, keep_memory,
for keeping memory.  Always keep memory if keep_memory is true.
(init_reloc_cookie_rels): Likewise
(init_reloc_cookie_for_section): Add a bool argument for keeping
memory and pass it to init_reloc_cookie and
init_reloc_cookie_rels.
(_bfd_elf_gc_mark_reloc): Pass false to _bfd_elf_gc_mark.
(_bfd_elf_gc_mark): Pass true to init_reloc_cookie_for_section
for the eh_frame section.  Pass false to
init_reloc_cookie_for_section for other sections.
(_bfd_elf_gc_mark_extra_sections): Add Add a bool argument for
keeping memory and pass it to _bfd_elf_gc_mark.
(bfd_elf_parse_eh_frame_entries): Pass false to init_reloc_cookie
and init_reloc_cookie_rels.
(bfd_elf_gc_sections): Pass false to init_reloc_cookie_for_section
and _bfd_elf_gc_mark.
(bfd_elf_discard_info): Pass false to
init_reloc_cookie_for_section and init_reloc_cookie.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31458] FAIL: MIPS eh-frame 3 with --no-keep-memory

2024-04-02 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31458

--- Comment #2 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=33c58f484406bd9665e5bd15637600540157f612

commit 33c58f484406bd9665e5bd15637600540157f612
Author: H.J. Lu 
Date:   Thu Mar 7 08:28:29 2024 -0800

PR31458, FAIL: MIPS eh-frame 3 with --no-keep-memory

PR 31458
bfd/
* elf-bfd.h (_bfd_elf_link_read_relocs),
(_bfd_elf_link_info_read_relocs): Constify section.
* elflink.c: Likewise.
* elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): Read
relocs again in case --no-keep-memory.
ld/
* testsuite/ld-mips-elf/mips-elf.exp: Run --no-keep-memory
version of eh-frame3 test.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/30569] MIPS16 function stub assertion fail for mipsel_24kc_24kf

2024-04-01 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=30569

--- Comment #8 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=3c6c32951e292a51ede70b8087bb0308d7dbc4fc

commit 3c6c32951e292a51ede70b8087bb0308d7dbc4fc
Author: Alan Modra 
Date:   Thu Mar 28 20:33:32 2024 +1030

PR 30569, delete _bfd_mips_elf_early_size_sections

PR30569 was triggered by a patch of mine 6540edd52cc0 moving the call
to always_size_sections in bfd_elf_size_dynamic_sections earlier, made
to support the x86 DT_RELR implementation.  This broke mips16 code
handling stubs when --export-dynamic is passed to the linker, because
numerous symbols then became dynamic after always_size_sections.  The
mips backend fiddles with symbols in its always_size_sections.  Maciej
in 902e9fc76a0e had moved the call to always_size_sections to after
the export-dynamic code.  Prior to that, Nathan in 04c3a75556c0 moved
it before the exec stack code, back to the start of
bfd_elf_size_dynamic_sections which was where Ian put it originally
in ff12f303355b.  So the call has moved around a little.  I'm leaving
it where it is, and instead calling mips_elf_check_symbols from
late_size_sections (the old size_dynamic_sections) which is now always
called.  In fact, the whole of _bfd_mips_elf_early_size_sections can
be merged into _bfd_mips_elf_late_size_sections.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/30569] MIPS16 function stub assertion fail for mipsel_24kc_24kf

2024-04-01 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=30569

--- Comment #7 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=af969b14aedcc0ae27dcefab4327ff2d153dec8b

commit af969b14aedcc0ae27dcefab4327ff2d153dec8b
Author: Alan Modra 
Date:   Thu Mar 28 19:25:42 2024 +1030

PR 30569, always call elf_backend_size_dynamic_sections

This largely mechanical patch is preparation for a followup patch.

For quite some time I've thought that it would be useful to call
elf_backend_size_dynamic_sections even when no dynamic objects are
seen by the linker.  That's what this patch does, with some renaming.
There are no functional changes to the linker, just a move of the
dynobj test in bfd_elf_size_dynamic_sections to target backend
functions, replacing the asserts/aborts already there.  No doubt some
of the current always_size_sections functions could be moved to
size_dynamic_sections but I haven't made that change.

Because both hooks are now always called, I have renamed
always_size_sections to early_size_sections and size_dynamic_sections
to late_size_sections.  I condisdered calling late_size_sections plain
size_sections, since this is the usual target dynamic section sizing
hook, but decided that searching the sources for "size_sections" would
then hit early_size_sections and other functions.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31503] [hppa] Unsupported 14-bit PA 2.0 relocations for 32-bit (narrow) mode (elf32-hppa.c)

2024-04-01 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31503

--- Comment #14 from Sourceware Commits  ---
The master branch has been updated by John David Anglin
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=a82e3815dfffe60a257021c592e2dceca719a04a

commit a82e3815dfffe60a257021c592e2dceca719a04a
Author: John David Anglin 
Date:   Mon Apr 1 23:00:52 2024 +

hppa: Implement PA 2.0 symbolic relocations for long displacements

The PA 2.0 architecture introduced several new load and store
instructions with long displacements.  These include floating
point loads and stores for word mode, and integer and floating
point loads and stores for double words.  Currently, ld does
not correctly support symbolic relocations for these instructions.

If these are used, ld applies the standard R_PARISC_DPREL14R
relocation and corrupts the instruction.  This change uses
bfd_hppa_insn2fmt to determine the correct relocation format.

We need to check the computed displacement as the immediate
value used in these instruction must be a multiple of 4 or 8
depending on whether the access is for a word or double word.

A misaligned offset can potentially occur if the symbol is not
properly aligned or if $global$ (the global pointer) is not
double word aligned.  $global$ is provided as a .data section
start symbol.  The patch adjusts elf.sc and hppalinux.sh to
align .data to a 8-byte boundary in non-shared and non-pie
links.

2024-04-01  John David Anglin  

PR ld/31503

bfd/ChangeLog:

* elf32-hppa.c (final_link_relocate): Output

ld/ChangeLog:

* emulparams/hppalinux.sh (DATA_SECTION_ALIGNMENT): Define.
* scripttempl/elf.sc: Align .data section to DATA_SECTION_ALIGNMENT
when relocating.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/23935] [Regression] ld.bfd does not rescan fat LTO archives to resolve plugin-added references

2024-03-26 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=23935

--- Comment #12 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=bb9a951fab7a30cc1209c6b8b1716c13456e8b1a

commit bb9a951fab7a30cc1209c6b8b1716c13456e8b1a
Author: H.J. Lu 
Date:   Thu Dec 6 11:45:41 2018 -0800

Don't claim a fat IR object if no IR object should be claimed

When the linker sees an input object containing nothing but IR during
rescan, it should ignore it (LTO phase is over).  But if the input object
is a fat IR object, which has non-IR code as well, it should be used to
resolve references as if it did not contain any IR at all.  This patch
adds lto_type to bfd and linker avoids claiming a fat IR object if no IR
object should be claimed.

bfd/

PR ld/23935
* archive.c (_bfd_compute_and_write_armap): Check bfd_get_lto_type
instead of lto_slim_object.
* elflink.c (elf_link_add_object_symbols): Likewise.
* bfd.c (bfd_lto_object_type): New.
(bfd): Remove lto_slim_object and add lto_type.
(bfd_get_lto_type): New function.
* elf.c (lto_section): Removed.
(_bfd_elf_make_section_from_shdr): Don't set lto_slim_object.
* format.c: (lto_section): New.
(bfd_set_lto_type): New function.
(bfd_check_format_matches): Call bfd_set_lto_type.
* bfd-in2.h: Regenerated.

binutils/

PR ld/23935
* nm.c (display_rel_file): Check bfd_get_lto_type instead of
lto_slim_object.

ld/

PR ld/23935
* ldmain.c (add_archive_element): Don't claim a fat IR object if
no IR object should be claimed.
* testsuite/ld-plugin/lto.exp (pr20103): Adjust fat IR test.
Add PR ld/23935 test.
* testsuite/ld-plugin/pr23935a.c: New file.
* testsuite/ld-plugin/pr23935b.c: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gprofng/31460] heap tracing causes infinite recursion on calloc with multi-threaded applications

2024-03-25 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31460

--- Comment #9 from Sourceware Commits  ---
The master branch has been updated by Vladimir Mezentsev
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=99c3fe52d237eae546d7de484d0cfbd615ac192c

commit 99c3fe52d237eae546d7de484d0cfbd615ac192c
Author: Vladimir Mezentsev 
Date:   Sat Mar 23 18:31:03 2024 -0700

gprofng: fix infinite recursion on calloc with multi-threaded applications

libcollector uses pthread_getspecific() and pthread_setspecific() to access
thread local memory. libcollector uses this memory to check that
interposed functions (like malloc, calloc or free) don't have recursion.
The first time we call calloc(), we call pthread_setspecific() to create
a thread-specific value.
On Ubuntu machine, pthread_setspecific() calls calloc(), and we cannot
intercept
such recursion.
gcc supports thread-local storage. For example,
  static __thread int reentrance = 0;
I rewrote code using this instead of pthread_setspecific().

gprofng/ChangeLog
2024-03-23  Vladimir Mezentsev  

PR gprofng/31460
* libcollector/heaptrace.c: Use the __thread variable to check for
* reentry. Clean up code.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31115] [ARM] The minimalistic DWARF DIE for function has wrong address in Thumb mode

2024-03-20 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31115

--- Comment #7 from Sourceware Commits  ---
The master branch has been updated by Tom de Vries :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=8a61ee551ce3059f602fee1e576af08c03f991bc

commit 8a61ee551ce3059f602fee1e576af08c03f991bc
Author: Tom de Vries 
Date:   Wed Mar 20 09:57:49 2024 +0100

[gdb/symtab] Workaround PR gas/31115

On arm-linux, with gas 2.40, I run into:
...
(gdb) x /i main+8^M
   0x4e1 :  vrhadd.u16  d14, d14, d31^M
(gdb) FAIL: gdb.arch/pr25124.exp: disassemble thumb instruction (1st try)
...

This is a regression due to PR gas/31115, which makes gas produce a low_pc
with the thumb bit set (0x4d8 & 0x1):
...
 <1><24>: Abbrev Number: 2 (DW_TAG_subprogram)
<25>   DW_AT_name: main
<29>   DW_AT_external: 1
<29>   DW_AT_type: <0x2f>
<2a>   DW_AT_low_pc  : 0x4d9
<2e>   DW_AT_high_pc : 12
...

The regression was introduced in 2.39, and is also present in 2.40 and
2.41,
and hasn't been fixed yet.

Work around this in read_func_scope, by using gdbarch_addr_bits_remove on
low_pc and high_pc.

Tested on arm-linux and x86_64-linux.

PR tdep/31453
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31453

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31469] readelf: erronously says "Cannot decode 64-bit note in 32-bit build" in 64-bit build when dumping notes of core file

2024-03-19 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31469

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=696f6b6660a082a401494b4f499c3acf3ed59c93

commit 696f6b6660a082a401494b4f499c3acf3ed59c93
Author: Nick Clifton 
Date:   Tue Mar 19 15:16:43 2024 +

Remove redunant test of ELF size in core note decoder.

  PR 31469

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31456] readelf: SEGV in read_leb128

2024-03-19 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31456

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=709b8d140b47df446dd242450d558bad20780ebc

commit 709b8d140b47df446dd242450d558bad20780ebc
Author: Nick Clifton 
Date:   Tue Mar 19 14:16:47 2024 +

Fix seg-fault in the DWARF reader code when accessing an abbreviatuin table
with a corrupt entry offset.

  PR 31456

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31455] objcopy: invalid-free in bfd_init_section_compress_status

2024-03-19 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31455

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=2c16eb1d8346f0d390f5278d5ff187854c2d5879

commit 2c16eb1d8346f0d390f5278d5ff187854c2d5879
Author: Nick Clifton 
Date:   Tue Mar 19 12:48:04 2024 +

Fix free of unallocated memory in the BFD library's compression code.

  PR 31455

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31464] GCC 6.4 failed to build binutils

2024-03-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31464

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=03fa0c63d3a5944afcf031ecf0b433b2985e6eeb

commit 03fa0c63d3a5944afcf031ecf0b433b2985e6eeb
Author: H.J. Lu 
Date:   Fri Mar 8 08:08:02 2024 -0800

gas: Fix x86 build with GCC 6.4

Add "()" to silence GCC 6.4:

.../gas/config/tc-i386.c: In function âx86_ginsn_leaâ:
.../gas/config/tc-i386.c:5738:19: error: logical not is only applied to the
left hand side of comparison [-Werror=logical-not-parentheses]
   if (!i.base_reg != (!i.index_reg || i.index_reg->reg_num == RegIZ))
   ^~
cc1: all warnings being treated as errors

PR gas/31464
* config/tc-i386.c (x86_ginsn_lea): Add "()" to silence GCC 6.4.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31444] _bfd_abort doesn't work when called from bfd_check_format_matches

2024-03-05 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31444

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=55e01dbd7623941373ee500032119a124fd2d673

commit 55e01dbd7623941373ee500032119a124fd2d673
Author: Alan Modra 
Date:   Tue Mar 5 14:33:40 2024 +1030

Don't use bfd_error_handler in bfd_abort

We don't want to lose an abort message when bfd_set_error_handler has
been called to ignore or cache errors.

PR ld/31444
* bfd.c (_bfd_abort): Don't use _bfd_error_handler.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/19871] description of --pie, --pic-executable options contains wrong-looking statement

2024-02-29 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=19871

--- Comment #3 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d5c5b27095e3ba5bf589ee3ecf1d22c7ba9212ab

commit d5c5b27095e3ba5bf589ee3ecf1d22c7ba9212ab
Author: Alan Modra 
Date:   Fri Mar 1 09:00:27 2024 +1030

PR19871, description of --pie

Say why we even mention shared libraries here (ET_DYN), and clarify
symbol resolution.  There are of course many other ways that PIEs
resemble PDEs more closely than shared libraries.

PR 19871
* ld.texi (-pie): Clarify.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/21739] Inconsistent diagnostics

2024-02-29 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=21739

--- Comment #5 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f757c5cae97b1437f4fcf2e25c53376775ea541f

commit f757c5cae97b1437f4fcf2e25c53376775ea541f
Author: Alan Modra 
Date:   Thu Feb 29 21:03:12 2024 +1030

PR21739, Inconsistent diagnostics

PR 21739
cpu/
* mep.opc (parse_lo16, parse_unsigned7): Mark %function
message as no-c-format.
opcodes/
* mep-asm.c: Regenerate.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gprofng/31390] [display html] Undefined subroutine ::hex

2024-02-28 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31390

--- Comment #6 from Sourceware Commits  ---
The master branch has been updated by Vladimir Mezentsev
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=3243d790ee32aa8eda69226d81b1e79dbd1dcd87

commit 3243d790ee32aa8eda69226d81b1e79dbd1dcd87
Author: Ruud van der Pas 
Date:   Tue Feb 27 18:29:55 2024 +

gprofng: change use of bignum to use of bigint

Change the statement "use bignum" to "use bigint".  This is sufficient
for gp-display-html to work and removes the dependency on bignum.

gprofng/ChangeLog
2024-02-27  Ruud van der Pas  

PR 31390
* gprofng/gp-display-html: One line change to "use bigint".

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/23877] Internal error: bad value (n32r5900) for default CPU in mips_after_parse_args at gas/config/tc-mips.c:14987

2024-02-28 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=23877

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=62143ef92c28e64f3e4438b6dd4e8bb04a0fed12

commit 62143ef92c28e64f3e4438b6dd4e8bb04a0fed12
Author: Alan Modra 
Date:   Thu Feb 29 08:45:18 2024 +1030

PR23877, bad value (n32r5900) for default CPU

Catching this at configure time would be nicer, but we'd need to exactly
match mips_parse_cpu in configure.ac and keep it all in sync.

PR 23877
* config/tc-mips.c (mips_after_parse_args): Don't assert that
mips_parse_cpu returns non-NULL, call as_fatal with an informative
message instead.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/23881] pdp11 binutils fails if too much debug data

2024-02-28 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=23881

--- Comment #3 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4b72a278f46245635ca03ffc8179570c07e3531a

commit 4b72a278f46245635ca03ffc8179570c07e3531a
Author: Alan Modra 
Date:   Wed Feb 28 18:53:52 2024 +1030

PR23881, pdp11 binutils fails if too much debug data

The PR testcase overflows one of the exec header fields, e_syms (the
size of the symbol table), leading to the string table offset being
wrong.  Things go downhill from there.  Fixed by checking for
overflow.  This happens to trigger in the ld testsuite, so xfail that
test.

PR 23881
bfd/
* libaout.h (swap_exec_header_out): Return a bool.
* aoutx.h (swap_exec_header_out): Check for overflow in exec
header.
* pdp11.c (swap_exec_header_out): Likewise.
* i386lynx.c (WRITE_HEADERS): Adjust.
ld/
* testsuite/ld-scripts/map-address.exp: xfail pdp11.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/25333] GAS is slow processing units compiled with -fdebug-types-sections containing many types

2024-02-23 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=25333

--- Comment #4 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=086c8f406d82ce171d5867eed93f1308e07252c5

commit 086c8f406d82ce171d5867eed93f1308e07252c5
Author: Alan Modra 
Date:   Sat Feb 24 11:38:57 2024 +1030

PR25333, GAS is slow processing -fdebug-types-sections

gas needs to build lists of sections for each group.  This arranges to
build the lists earlier, so they can be used when looking for sections
that belong to a group.  Using the section hash table to find sections
by name, then by group isn't efficient when there are numerous groups
with the same section names.  Using a hash table to quickly find a
group, then searching by section name on a list for the group results
in a 100-fold speed improvement assembling the testcase in this PR.

To reduce the number of times we traverse the section list, the patch
also moves some processing done in elf_adjust_symtab for linked-to
section, to elf_frob_file.  This requires a testsuite change because
processing will stop before elf_frob_file if there is a parse error in
section21.s, ie. you'll only get the "junk at end of line" error, not
the "undefined linked-to symbol" errors.

PR 25333
* config/obj-elf.c (struct group_list, groups): Move earlier.
(match_section): New function, extracted from..
(get_section_by_match): ..here.
(free_section_idx): Move earlier.
(group_section_find, group_section_insert): New functions.
(change_section): Use the above.
(elf_set_group_name): New function.
(obj_elf_attach_to_group): Use elf_set_group_name.
(set_additional_section_info): Handle linked_to_symbol_name and
stabs code, extracted from..
(adjust_stab_sections): ..here,..
(build_additional_section_info): ..and here.
(elf_adjust_symtab): Don't call build_additional_section_info.
(elf_frob_file): Adjust.
* config/obj-elf.h (elf_set_group_name): Declare.
* config/tc-xtensa.c (cache_literal_section): Use
elf_set_group_name.
(xtensa_make_property_section): Likewise.
* testsuite/gas/elf/attach-1.d: Stricter group section matching,
and changed group section ordering.
* testsuite/gas/elf/attach-2.d: Stricter group section matching.
* testsuite/gas/elf/attach-2.s: Provide section bar type.
* testsuite/gas/elf/elf.exp: Run attach-2.
* testsuite/gas/elf/section21.l: Update.
* testsuite/gas/elf/section21.s: Don't check for a parse error.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/25333] GAS is slow processing units compiled with -fdebug-types-sections containing many types

2024-02-23 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=25333

--- Comment #3 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=bc45bfd25984a709dec4236daf412c58a127633a

commit bc45bfd25984a709dec4236daf412c58a127633a
Author: Alan Modra 
Date:   Sat Feb 24 11:30:02 2024 +1030

xtensa: move xtensa_make_property_section from bfd to gas

This function is only used by gas, so move it there.  Necessary for
gas to keep track of group sections as they are created.

PR 25333
bfd/
* elf32-xtensa.c (xtensa_make_property_section): Delete.
(xtensa_property_section_name): Make public.
include/
* elf/xtensa.h (xtensa_make_property_section): Delete.
(xtensa_property_section_name): Declare
gas/
* config/tc-xtensa.c (xtensa_make_property_section): New,
moved from elf32-xtensa.c.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31388] There is no documentation for -moperand-check

2024-02-23 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31388

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Jan Beulich :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=db5aae3ccd7af607e1a3af1df9f3bdb62d7e5259

commit db5aae3ccd7af607e1a3af1df9f3bdb62d7e5259
Author: Jan Beulich 
Date:   Fri Feb 23 11:59:42 2024 +0100

x86: document -moperand-check=

PR gas/31388
Like other command line options this should be mentioned in
documentation as well, not just in "as --help" output.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/29785] memory bloat in version 2.39

2024-02-21 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=29785

--- Comment #7 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f96127310144d360eac93444c1b6efe80497d163

commit f96127310144d360eac93444c1b6efe80497d163
Author: Alan Modra 
Date:   Wed Feb 21 21:59:40 2024 +1030

Re: PR29785, memory bloat after b43771b045fb

Commit 7bd1e04a3532 introduced "dwarf2.c:2152:29: runtime error: shift
exponent 64 is too large".  This is on the bucket_high_pc calculation
which was moved to the top of insert_arange_in_trie where previously
it was later, at a point where the overflow could not occur.  Move it
back and arrange for a duplicate calculation of bucket_high_pc which
is also protected from overflow.

PR 29785
* dwarf2.c (insert_arange_in_trie): Split bucket_high_pc.
Move trie_pc_bits < VMA_BITS into splitting_leaf_will_help.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/27597] nios: assertion fail in nios2_elf32_install_imm16

2024-02-16 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=27597

--- Comment #3 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=900c0f0aa3d78cd9e67ccd26fbc86224cef4c5b1

commit 900c0f0aa3d78cd9e67ccd26fbc86224cef4c5b1
Author: Alan Modra 
Date:   Fri Feb 16 22:33:29 2024 +1030

PR27597, nios: assertion fail in nios2_elf32_install_imm16

The assertion in nios2_elf32_install_imm16 triggers when the PLT is
twice the maximum allowable size for a branch from PLTn to reach
.PLTresolve, and on no other call to nios2_elf32_install_imm16.  That
makes the assertion completely useless.  We can handle a PIC PLT
exceeding 0x8000 in size by bouncing branches that won't reach through
previous branches.

PR 27597
* elf32-nios2.c (nios2_elf32_install_imm16): Delete BFD_ASSERT.
(nios2_build_one_stub): Don't bother masking value passed to
nios2_elf32_install_imm16.
(nios2_elf32_finish_dynamic_symbol): Likewise.  Handle overflow
of PLTn branch to .PLTresolve by bouncing through prior branches.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31389] Wrong default for -msse-check is displayed

2024-02-15 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31389

--- Comment #2 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by H.J. Lu
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=553c7f61b74badf91df484450944675efd9cd485

commit 553c7f61b74badf91df484450944675efd9cd485
Author: H.J. Lu 
Date:   Thu Feb 15 15:00:31 2024 -0800

x86: Display -msse-check= default as none

Display -msse-check= default as none for "as --help" since its default
is none, not warning.

PR gas/31389
* config/tc-i386.c (md_show_usage): Change -msse-check= default
to none.

(cherry picked from commit 7a6a03c499ad899c1d1dd93beccbb62795feb1db)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31389] Wrong default for -msse-check is displayed

2024-02-15 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31389

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7a6a03c499ad899c1d1dd93beccbb62795feb1db

commit 7a6a03c499ad899c1d1dd93beccbb62795feb1db
Author: H.J. Lu 
Date:   Thu Feb 15 15:00:31 2024 -0800

x86: Display -msse-check= default as none

Display -msse-check= default as none for "as --help" since its default
is none, not warning.

PR gas/31389
* config/tc-i386.c (md_show_usage): Change -msse-check= default
to none.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/28448] Memory leak in function add_symbols(plugin.c) from bfd linker

2024-02-15 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=28448

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=19bfbfa6659c7733d3148dcce5125a0eb3fd9670

commit 19bfbfa6659c7733d3148dcce5125a0eb3fd9670
Author: Alan Modra 
Date:   Thu Feb 15 16:55:59 2024 +1030

PR28448, Memory leak in function add_symbols(plugin.c)

PR 28448
* plugin.c (add_symbols): bfd_alloc memory for symptrs.  Check
bfd_make_empty_symbol return.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/29785] memory bloat in version 2.39

2024-02-14 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=29785

--- Comment #5 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7bd1e04a3532ed3f833a79a40bd7bc0bd48706ad

commit 7bd1e04a3532ed3f833a79a40bd7bc0bd48706ad
Author: Steinar H. Gunderson 
Date:   Fri May 19 09:14:54 2023 +

PR29785, memory bloat after b43771b045fb

Pathological cases of dwarf info with overlapping duplicate memory
ranges can cause splitting of trie leaf nodes, which in the worst case
will cause memory to increase without bounds.

PR 29785
* dwarf2.c (insert_arange_in_trie): Don't split leaf nodes
unless that reduces number of elements in at least one node.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/30308] as crash (infinite recursion) on invalid source file

2024-02-14 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=30308

--- Comment #3 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=2fbbadc2c336cad228be998a118e3bab3be30757

commit 2fbbadc2c336cad228be998a118e3bab3be30757
Author: Alan Modra 
Date:   Thu Feb 15 11:12:01 2024 +1030

PR30308, infinite recursion in i386_intel_simplify

This patch exposes the symbol "resolving" flag for use in
i386_intel_simplify, not only preventing infinite recursion on the
testcase in the PR but also more complicated cases like:

 .intel_syntax
 b = a
 a = b
 mov eax, [a]

PR 30308
* symbols.c (symbol_mark_resolving, symbol_clear_resolving),
(symbol_resolving_p): New functions.
* symbols.h: Declare them.
* config/tc-i386-intel.c (i386_intel_simplify): Delete forward
declaration.  Formatting.
(i386_intel_simplify_symbol): Use resolving flag to prevent
infinite recursion.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/14962] Change of behaviour (symbols in linker file) in 2.22.90.20120924

2024-02-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=14962

--- Comment #10 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=74f03a0ed2fed504f037711aee75dd1a00d15b17

commit 74f03a0ed2fed504f037711aee75dd1a00d15b17
Author: Alan Modra 
Date:   Fri Feb 9 12:13:13 2024 +1030

PR 14962 testcase xcoff failure

Like https://sourceware.org/pipermail/binutils/2002-August/021279.html
but for symbols defined in an xcoff object but then made absolute by a
linker script.

* xcofflink.c (xcoff_link_input_bfd): Set n_scnum correctly
for symbols made absolute by a linker script.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31208] strip with no arguments sometimes breaks ELF alignment requirements

2024-02-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31208

--- Comment #7 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by Alan Modra
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=78f9e9faaa41d628170f6047c3e032a67f9e829d

commit 78f9e9faaa41d628170f6047c3e032a67f9e829d
Author: Alan Modra 
Date:   Fri Feb 9 07:04:22 2024 +1030

PR31208, strip can break ELF alignment requirements

In https://sourceware.org/pipermail/binutils/2007-August/053261.html
(git commit 3dea8fca8b86) I disabled a then new linker feature that
removed empty PT_LOAD headers in cases where a user specified program
headers, and for objcopy.  This can be a problem for objcopy/strip and
since objcopy operates on sections, any part of a PT_LOAD loading file
contents not covered by a section will be omitted anyway.

PR 31208
* elf.c (_bfd_elf_map_sections_to_segments): Pass remove_empty_load
as true to elf_modify_segment_map for objcopy/strip.

(cherry picked from commit 7f26d260ef76a4cb2873a7815bef187005528c19)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31208] strip with no arguments sometimes breaks ELF alignment requirements

2024-02-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31208

--- Comment #5 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7f26d260ef76a4cb2873a7815bef187005528c19

commit 7f26d260ef76a4cb2873a7815bef187005528c19
Author: Alan Modra 
Date:   Fri Feb 9 07:04:22 2024 +1030

PR31208, strip can break ELF alignment requirements

In https://sourceware.org/pipermail/binutils/2007-August/053261.html
(git commit 3dea8fca8b86) I disabled a then new linker feature that
removed empty PT_LOAD headers in cases where a user specified program
headers, and for objcopy.  This can be a problem for objcopy/strip and
since objcopy operates on sections, any part of a PT_LOAD loading file
contents not covered by a section will be omitted anyway.

PR 31208
* elf.c (_bfd_elf_map_sections_to_segments): Pass remove_empty_load
as true to elf_modify_segment_map for objcopy/strip.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31283] windmc (s390x) fails with: parser: syntax error

2024-02-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31283

--- Comment #9 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by Alan Modra
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e19278f72bdc92e720b2d6c144ddedff5821b56c

commit e19278f72bdc92e720b2d6c144ddedff5821b56c
Author: Richard W.M. Jones 
Date:   Wed Jan 24 12:25:23 2024 +

PR 31283 windmc: Parse input correctly on big endian hosts

On big endian hosts (eg. s390x) the windmc tool fails to parse even
trivial files:

  $ cat test.mc
  ;
  $ ./binutils/windmc ./test.mc
  In test.mc at line 1: parser: syntax error.
  In test.mc at line 1: fatal: syntax error.

The tool starts by reading the input as Windows CP1252 and then
converting it internally into an array of UTF-16LE, which it then
processes as an array of unsigned short (typedef unichar).

There are lots of ways this is wrong, but in the specific case of big
endian machines the little endian pairs of bytes are byte-swapped.

For example, the ';' character in the input above is first converted
to UTF16-LE byte sequence { 0x3b, 0x00 }, which is then cast to
unsigned short.  On a big endian machine the first unichar appears to
be 0x3b00.  The lexer is unable to recognize this as the comment
character ((unichar)';') and so parsing fails.

The simple fix is to convert the input to UTF-16BE on big endian
machines (and do the reverse conversion when writing the output).

Fixes: https://sourceware.org/bugzilla/show_bug.cgi?id=31283
Signed-off-by: Richard W.M. Jones 
(cherry picked from commit 3f8f9745c75b333515f399fc2908ede2ed8014e9)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31283] windmc (s390x) fails with: parser: syntax error

2024-02-08 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31283

--- Comment #8 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=3f8f9745c75b333515f399fc2908ede2ed8014e9

commit 3f8f9745c75b333515f399fc2908ede2ed8014e9
Author: Richard W.M. Jones 
Date:   Wed Jan 24 12:25:23 2024 +

PR 31283 windmc: Parse input correctly on big endian hosts

On big endian hosts (eg. s390x) the windmc tool fails to parse even
trivial files:

  $ cat test.mc
  ;
  $ ./binutils/windmc ./test.mc
  In test.mc at line 1: parser: syntax error.
  In test.mc at line 1: fatal: syntax error.

The tool starts by reading the input as Windows CP1252 and then
converting it internally into an array of UTF-16LE, which it then
processes as an array of unsigned short (typedef unichar).

There are lots of ways this is wrong, but in the specific case of big
endian machines the little endian pairs of bytes are byte-swapped.

For example, the ';' character in the input above is first converted
to UTF16-LE byte sequence { 0x3b, 0x00 }, which is then cast to
unsigned short.  On a big endian machine the first unichar appears to
be 0x3b00.  The lexer is unable to recognize this as the comment
character ((unichar)';') and so parsing fails.

The simple fix is to convert the input to UTF-16BE on big endian
machines (and do the reverse conversion when writing the output).

Fixes: https://sourceware.org/bugzilla/show_bug.cgi?id=31283
Signed-off-by: Richard W.M. Jones 

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31326] SCFI must handle non QWORD ALU with imm and MOV ops correctly

2024-02-06 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31326

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Indu Bhagat :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f8c50ae2703e6b67655b13b9766365ae3073fd15

commit f8c50ae2703e6b67655b13b9766365ae3073fd15
Author: Indu Bhagat 
Date:   Tue Feb 6 16:20:53 2024 -0800

gas: x86: ginsn: handle sub-QWORD ALU with imm and MOV ops correctly

PR gas/31326
SCFI must handle non QWORD ALU with imm and MOV ops correctly

As per the x86 ISA manual:
  - 32-bit operands generate a 32-bit result, zero-extended to a 64-bit
result in the destination general-purpose register.
  - 8-bit and 16-bit operands generate an 8-bit or 16-bit result. The
upper 56 bits or 48 bits (respectively) of the destination
general-purpose register are not modified by the operation.

Unlike previously thought, sub-QWORD ALU/imm and MOV ops do have
implications on SCFI.  SCFI/ginsn machinery does not track operation size
in the ginsn representation.  But given that these sub-QWORD ops update
only a portion of a 64-bit destination register, for SCFI purposes, this
needs to be deemed as an untraceable update (when the destination is
REG_SP / REG_FP). Although in most cases, sub-QWORD ops are not expected
for stack management, but the SCFI machinery must behave correctly, when
such ops are indeed present.

As mentioned earlier, ginsn representation does not carry operation size
information.  To resolve the issue raised in PR gas/31326, an option is
to force the generation of GINSN_TYPE_OTHER for all cases when there is
a 8/16/32 bit op.  But this may dilute the utility of ginsn for other
use-cases, when they pop up in future.

The current approach is less disruptive than above in that it generates
GINSN_TYPE_OTHER for all cases only when:
  - there is a 8/16/32 bit op, and
  - the 64-bit op is otherwise traceable.

In other words this means:
 - For add/sub ops where dest is reg and src is reg/mem: these always
   make dest reg untraceable; So, the current handling is unchanged.  We
   simply skip detecting 8/16/32-bit ops.
 - An x86 pop instruction is translated to a load ginsn followed by a stack
   increment add op.  A load op always makes dest reg untraceable.
   Hence, if the pop instruction is sub-QWORD, we continue to (skip
   detecting 8/16/32-bit op, and) generate the load instruction as usual.
   This means that if input asm does have save and restore of unequal sized
   registers, gas/SCFI will not detect nor warn.
 - For ALU imm or MOV reg,reg, however, a GINSN_TYPE_OTHER is generated
   when a 8/16/32-bit op is seen.

gas/
PR gas/31326
* config/tc-i386.c (x86_ginsn_addsub_reg_mem): Add a code
comment.
(x86_ginsn_addsub_mem_reg): Likewise.
(x86_ginsn_alu_imm): Detect sub-QWORD opsize and exit early.
(x86_ginsn_move): Likewise.
(x86_ginsn_new): Add comment for 8-bit add/sub opcodes (in
opcode_space SPACE_BASE) about skipped handling.

gas/testsuite/:
PR gas/31326
* gas/scfi/x86_64/ginsn-add-1.l: Update.
* gas/scfi/x86_64/ginsn-add-1.s: Add some sub-QWORD add ops.
* gas/scfi/x86_64/ginsn-dw2-regnum-1.l: Update.
* gas/scfi/x86_64/ginsn-dw2-regnum-1.s: Use mov ops instead of
add to invoke and test the ginsn_dw2_regnum code path.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31323] [x86] GAS does not error out instruction that exceed 15 bytes

2024-02-06 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31323

--- Comment #4 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=0afc614c9938fbf5eda10a26c77d574c3c2f945a

commit 0afc614c9938fbf5eda10a26c77d574c3c2f945a
Author: H.J. Lu 
Date:   Mon Feb 5 11:58:08 2024 -0800

x86: Warn .insn instruction with length > 15 bytes

Change .insn instruction with length > 15 bytes from error to warning.

PR gas/31323
* config/tc-i386.c (output_insn): Issue a warning when .insn
instruction length exceeds the limit of 15 bytes.
* testsuite/gas/i386/oversized64.s: Add a test for .insn
* testsuite/gas/i386/oversized64.l: Updated.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31323] [x86] GAS does not error out instruction that exceed 15 bytes

2024-02-02 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31323

--- Comment #3 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by H.J. Lu
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=42cde237366398f6e318232f4ce080bef42f0371

commit 42cde237366398f6e318232f4ce080bef42f0371
Author: H.J. Lu 
Date:   Thu Feb 1 14:42:08 2024 -0800

x86: Disallow instructions with length > 15 bytes

It is a hard error when an instruction length exceeds the limit of 15
bytes:

[hjl@gnu-cfl-3 tmp]$ cat x.s
.text
xacquire lock addq $0x11223344, %fs:(,%eax)
[hjl@gnu-cfl-3 tmp]$ gcc -c x.s
x.s: Assembler messages:
x.s:2: Warning: instruction length of 16 bytes exceeds the limit of 15
[hjl@gnu-cfl-3 tmp]$ objdump -dw x.o

x.o: file format elf64-x86-64

Disassembly of section .text:

 <.text>:
   0:   64 67 f2 f0 48 81 04 05 00 00 00 00 44 33 22xacquire lock (bad)
   f:   11  .byte 0x11
[hjl@gnu-cfl-3 tmp]$

and

[hjl@gnu-cfl-3 tmp]$ cat z.s
addq $0xe0, %fs:0, %rdx
[hjl@gnu-cfl-3 tmp]$ as -o z.o z.s
z.s: Assembler messages:
z.s:1: Warning: instruction length of 16 bytes exceeds the limit of 15
[hjl@gnu-cfl-3 tmp]$ objdump -dw z.o

z.o: file format elf64-x86-64

Disassembly of section .text:

 <.text>:
   0:   64 62 f4 ec 18 81 04 25 00 00 00 00 e0 00 00(bad)
...
[hjl@gnu-cfl-3 pr31323]$

Instructions with length > 15 bytes are always invalid.  It is quite easy
to generate invalid instructions with APX now.  We should issue an error
when instruction length exceeds the limit of 15 bytes.

PR gas/31323
* config/tc-i386.c (output_insn): Issue an error when instruction
length exceeds the limit of 15 bytes.
* testsuite/gas/i386/oversized16.l: Updated.
* testsuite/gas/i386/oversized64.l: Likewise.
* testsuite/gas/i386/x86-64-apx-inval.l: New file.
* testsuite/gas/i386/x86-64-apx-inval.s: Likewise.

(cherry picked from commit 46bd909328c3c8f3d6fc7a505b2fad1eea72d872)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31323] [x86] GAS does not error out instruction that exceed 15 bytes

2024-02-02 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31323

--- Comment #2 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=46bd909328c3c8f3d6fc7a505b2fad1eea72d872

commit 46bd909328c3c8f3d6fc7a505b2fad1eea72d872
Author: H.J. Lu 
Date:   Thu Feb 1 14:42:08 2024 -0800

x86: Disallow instructions with length > 15 bytes

It is a hard error when an instruction length exceeds the limit of 15
bytes:

[hjl@gnu-cfl-3 tmp]$ cat x.s
.text
xacquire lock addq $0x11223344, %fs:(,%eax)
[hjl@gnu-cfl-3 tmp]$ gcc -c x.s
x.s: Assembler messages:
x.s:2: Warning: instruction length of 16 bytes exceeds the limit of 15
[hjl@gnu-cfl-3 tmp]$ objdump -dw x.o

x.o: file format elf64-x86-64

Disassembly of section .text:

 <.text>:
   0:   64 67 f2 f0 48 81 04 05 00 00 00 00 44 33 22xacquire lock (bad)
   f:   11  .byte 0x11
[hjl@gnu-cfl-3 tmp]$

and

[hjl@gnu-cfl-3 tmp]$ cat z.s
addq $0xe0, %fs:0, %rdx
[hjl@gnu-cfl-3 tmp]$ as -o z.o z.s
z.s: Assembler messages:
z.s:1: Warning: instruction length of 16 bytes exceeds the limit of 15
[hjl@gnu-cfl-3 tmp]$ objdump -dw z.o

z.o: file format elf64-x86-64

Disassembly of section .text:

 <.text>:
   0:   64 62 f4 ec 18 81 04 25 00 00 00 00 e0 00 00(bad)
...
[hjl@gnu-cfl-3 pr31323]$

Instructions with length > 15 bytes are always invalid.  It is quite easy
to generate invalid instructions with AVX now.  We should issue an error
when instruction length exceeds the limit of 15 bytes.

PR gas/31323
* config/tc-i386.c (output_insn): Issue an error when instruction
length exceeds the limit of 15 bytes.
* testsuite/gas/i386/oversized16.l: Updated.
* testsuite/gas/i386/oversized64.l: Likewise.
* testsuite/gas/i386/x86-64-apx-inval.l: New file.
* testsuite/gas/i386/x86-64-apx-inval.s: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31124] AVR: Support new Emulations for Devices with FLMAP

2024-01-31 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31124

--- Comment #5 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by Nick Clifton
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=2fad36c3f553d103fcd0b75abd7a17da89b99864

commit 2fad36c3f553d103fcd0b75abd7a17da89b99864
Author: Georg-Johann Lay 
Date:   Wed Jan 31 11:24:22 2024 +

PR31124: Addendum: Remove PROVIDE of __flmap_init_label, __flmap.

Supply these symbols as computed by the linker scripts, even when there are
weak definitions.
PR 31124
* scripttempl/avr.sc (__flmap, __flmap_init_label): Remove PROVIDE.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31124] AVR: Support new Emulations for Devices with FLMAP

2024-01-31 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31124

--- Comment #4 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=24f5deb64d9b0c33280108f185d03ff7dfef30ce

commit 24f5deb64d9b0c33280108f185d03ff7dfef30ce
Author: Georg-Johann Lay 
Date:   Wed Jan 31 11:23:20 2024 +

PR31124: Addendum: Remove PROVIDE of __flmap_init_label, __flmap.

Supply these symbols as computed by the linker scripts, even when there are
weak definitions.
PR 31124
  * scripttempl/avr.sc (__flmap, __flmap_init_label): Remove PROVIDE.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31314] chew crashing on use of uninitialized value

2024-01-29 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31314

--- Comment #3 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by Alan Modra
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6d329337f6701fe090602c6f8ca373250eb91b82

commit 6d329337f6701fe090602c6f8ca373250eb91b82
Author: Alan Modra 
Date:   Tue Jan 30 09:38:56 2024 +1030

PR31314, chew crashing on use of uninitialized value

The "drop" call in wrap_comment already increments pc.  Defining DOCDD
in proto.str is a warning fix.

PR 31314
* chew.c (wrap_comment): Don't increment pc.
* proto.str (DOCDD): Define.

(cherry picked from commit e175a2fc60cb9709c4461cdd8596ae05e529d67b)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31314] chew crashing on use of uninitialized value

2024-01-29 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31314

--- Comment #2 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e175a2fc60cb9709c4461cdd8596ae05e529d67b

commit e175a2fc60cb9709c4461cdd8596ae05e529d67b
Author: Alan Modra 
Date:   Tue Jan 30 09:38:56 2024 +1030

PR31314, chew crashing on use of uninitialized value

The "drop" call in wrap_comment already increments pc.  Defining DOCDD
in proto.str is a warning fix.

PR 31314
* chew.c (wrap_comment): Don't increment pc.
* proto.str (DOCDD): Define.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/31284] scfi: untraceable control flow should be a hard error

2024-01-26 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31284

--- Comment #1 from Sourceware Commits  ---
The master branch has been updated by Indu Bhagat :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=91cdbed4d7b3acff951e0f21008a7775a7f23c20

commit 91cdbed4d7b3acff951e0f21008a7775a7f23c20
Author: Indu Bhagat 
Date:   Fri Jan 26 10:30:18 2024 -0800

gas: scfi: untraceable control flow should be a hard error

PR gas/31284

Currently, if an indirect jump is seen, GCFG (a CFG of ginsns) cannot be
created, and the SCFI machinery bails out with a warning:
  "Warning: Untraceable control flow for func 'foo'; Skipping SCFI"

It is, however, better suited if this is a hard error.  Change it to a
hard error.  Also change the message to skip mentioning "SCFI", because
the error itself may also useful when ginsns are used for other passes
(distinct from SCFI) involving GCFG, like a pass to detect if there is
unreachable code.  Hence, simply say:
  "Error: untraceable control flow for func 'foo'"

gas/
PR gas/31284
* ginsn.c (ginsn_data_end): Use as_bad instead of as_warn.

gas/testsuite/
PR gas/31284
* gas/scfi/x86_64/ginsn-cofi-1.l: Adjust to the expected output
in case of errors.
* gas/scfi/x86_64/scfi-unsupported-cfg-1.l: Error not Warning.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31289] --fatal-warnings doesn't work for command-line options

2024-01-26 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31289

--- Comment #6 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=1b06334552f33015a6293571e9381d43dec3a5d3

commit 1b06334552f33015a6293571e9381d43dec3a5d3
Author: H.J. Lu 
Date:   Fri Jan 26 05:56:08 2024 -0800

elf: Rename is_standard_elf to uses_elf_em

Rename is_standard_elf to uses_elf_em for targets which use elf.em.

binutils/

PR ld/31289
* testsuite/lib/binutils-common.exp (is_standard_elf): Renamed
to ...
(uses_elf_em): This.

ld/

PR ld/31289
* testsuite/ld-elf/fatal-warnings-2a.d: Replace is_standard_elf
with uses_elf_em.
* testsuite/ld-elf/fatal-warnings-2b.d: Likewise.
* testsuite/ld-elf/fatal-warnings-3a.d: Likewise.
* testsuite/ld-elf/fatal-warnings-3b.d: Likewise.
* testsuite/ld-elf/fatal-warnings-4a.d: Likewise.
* testsuite/ld-elf/fatal-warnings-4b.d: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug binutils/31250] Stripping Rust static libraries fails because of overly zealous illegal path check

2024-01-26 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31250

--- Comment #7 from Sourceware Commits  ---
The master branch has been updated by Nick Clifton :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c8567a87a60cf5820ebc5d98c025e91e2735f373

commit c8567a87a60cf5820ebc5d98c025e91e2735f373
Author: Nick Clifton 
Date:   Fri Jan 26 11:54:08 2024 +

Fix: Stripping Rust static libraries fails because of overly zealous
illegal path check

  PR 31250
  * objcopy.c (copy_archive): Improve the handling of archives that contain
elements with invalid pathnames.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31289] --fatal-warnings doesn't work for command-line options

2024-01-25 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31289

--- Comment #5 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=eb12b17047e25eac70ba32b79144216e86d3baa4

commit eb12b17047e25eac70ba32b79144216e86d3baa4
Author: H.J. Lu 
Date:   Thu Jan 25 10:08:04 2024 -0800

elf: Add is_standard_elf

PR ld/31289 tests failed for fr30-elf, frv-elf, ft32-elf, iq2000-elf,
mn10200-elf, ms1-elf and msp430-elf targets:

FAIL: ld-elf/fatal-warnings-2a
FAIL: ld-elf/fatal-warnings-2b
FAIL: ld-elf/fatal-warnings-3a
FAIL: ld-elf/fatal-warnings-3b
FAIL: ld-elf/fatal-warnings-4a
FAIL: ld-elf/fatal-warnings-4b

even though PR ld/31289 targets xfail for [is_generic] targets.  These
targets not only don't use the generic_link_hash_table linker, but also
don't use the standard ELF emulation.  Add is_standard_elf for ELF
targets which use the standard ELF emulation and replace [is_generic]
with ![is_standard_elf] in PR ld/31289 tests.

binutils/

PR ld/31289
* testsuite/lib/binutils-common.exp (is_standard_elf): New.

ld/

PR ld/31289
* testsuite/lib/binutils-common.exp (is_generic): Return 1 for
fr30-*-*, frv-*-elf, ft32-*-*, iq2000-*-*, mn10200-*-*,
moxie-*-moxiebox*, msp430-*-* and mt-*-*.
* testsuite/ld-elf/fatal-warnings-2a.d: Replace [is_generic]
with ![is_standard_elf].
* testsuite/ld-elf/fatal-warnings-2b.d: Likewise.
* testsuite/ld-elf/fatal-warnings-3a.d: Likewise.
* testsuite/ld-elf/fatal-warnings-3b.d: Likewise.
* testsuite/ld-elf/fatal-warnings-4a.d: Likewise.
* testsuite/ld-elf/fatal-warnings-4b.d: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31289] --fatal-warnings doesn't work for command-line options

2024-01-25 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31289

--- Comment #4 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=624c610dd46ed441c349f4bd889f3416cf867fd5

commit 624c610dd46ed441c349f4bd889f3416cf867fd5
Author: H.J. Lu 
Date:   Thu Jan 25 07:39:05 2024 -0800

ld: Always call output_unknown_cmdline_warning

Call output_unknown_cmdline_warning if there are no input files so that

$ ld -z bad-option

reports

ld: warning: -z bad-option ignored
ld: no input files

instead of

ld: no input files

PR ld/31289
* ldmain.c (main): Call output_unknown_cmdline_warning if there
are no input files.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/31289] --fatal-warnings doesn't work for command-line options

2024-01-25 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31289

--- Comment #2 from Sourceware Commits  ---
The master branch has been updated by H.J. Lu :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=3eb33b8875a032678c375a76f689f928f57dfb15

commit 3eb33b8875a032678c375a76f689f928f57dfb15
Author: H.J. Lu 
Date:   Wed Jan 24 13:53:11 2024 -0800

ld: Improve --fatal-warnings for unknown command-line options

There are 2 problems with --fatal-warnings for unknown command-line
options:

1. --fatal-warnings doesn't trigger an error for an unknown command-line
option when --fatal-warnings is the last command-line option.
2. When --fatal-warnings triggers an error for an unknown command-line
option, the message says that the unknown command-line option is ignored.

This patch queues unknown command-line option warnings and outputs queued
command-line option warnings after all command-line options have been
processed so that --fatal-warnings can work for unknown command-line
options regardless of the order of --fatal-warnings.

When --fatal-warnings is used, the linker message is changed from

ld: warning: -z bad-option ignored

to

ld: error: unsupported option: -z bad-option

The above also applies to "-z dynamic-undefined-weak" when the known
"-z dynamic-undefined-weak" option is ignored.

PR ld/31289
* ldelf.c (ldelf_after_parse): Use queue_unknown_cmdline_warning
to warn the ignored -z dynamic-undefined-weak option.
* ldmain.c (main): Call output_unknown_cmdline_warnings after
calling ldemul_after_parse.
* ldmisc.c (CMDLINE_WARNING_SIZE): New.
(cmdline_warning_list): Likewise.
(cmdline_warning_head): Likewise.
(cmdline_warning_tail): Likewise.
(queue_unknown_cmdline_warning): Likewise.
(output_unknown_cmdline_warnings): Likewise.
* ldmisc.h (queue_unknown_cmdline_warning): Likewise.
(output_unknown_cmdline_warnings): Likewise.
* emultempl/elf.em (gld${EMULATION_NAME}_handle_option): Use
queue_unknown_cmdline_warning to warn unknown -z option.
* testsuite/ld-elf/fatal-warnings-1a.d: New file.
* testsuite/ld-elf/fatal-warnings-1b.d: Likewise.
* testsuite/ld-elf/fatal-warnings-2a.d: Likewise.
* testsuite/ld-elf/fatal-warnings-2b.d: Likewise.
* testsuite/ld-elf/fatal-warnings-3a.d: Likewise.
* testsuite/ld-elf/fatal-warnings-3b.d: Likewise.
* testsuite/ld-elf/fatal-warnings-4a.d: Likewise.
* testsuite/ld-elf/fatal-warnings-4b.d: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gprofng/30808] gprofng tests failed

2024-01-22 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=30808

--- Comment #8 from Sourceware Commits  ---
The binutils-2_41-branch branch has been updated by Sam James
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=883df8a8c0afef2e1d0a17083d95001251f7d3f6

commit 883df8a8c0afef2e1d0a17083d95001251f7d3f6
Author: Vladimir Mezentsev 
Date:   Fri Jan 19 18:40:21 2024 -0800

Fix 31252 gprofng causes testsuite parallel jobs fail

Before running our tests, we made a fake installation into ./tmpdir.
This installation changes libopcodes.la in the build area.
Gas testing may fail if gas and gprofng tests are run in parallel.

I create a script to run gprofng. Inside this script, LD_LIBRARY_PATH,
GPROFNG_SYSCONFDIR are set.
putenv_libcollector_ld_misc() first uses $GPROFNG_PRELOAD_LIBDIRS to create
directories for SP_COLLECTOR_LIBRARY_PATH ($SP_COLLECTOR_LIBRARY_PATH is
used
to set up LD_PRELOAD).

gprofng/ChangeLog
2024-01-19  Vladimir Mezentsev  

PR gprofng/31252
PR gprofng/30808
* src/envsets.cc (putenv_libcollector_ld_misc): Use
$GPROFNG_PRELOAD_LIBDIRS first to build SP_COLLECTOR_LIBRARY_PATH.
* testsuite/config/default.exp: Create a script to run gprofng.
* testsuite/lib/display-lib.exp: Fix typo.

(cherry picked from commit 26f557af696726a8556bff12f54e4d05cd7a5034)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gprofng/31252] gprofng causes testsuite parallel jobs fail (again)

2024-01-22 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31252

--- Comment #3 from Sourceware Commits  ---
The binutils-2_41-branch branch has been updated by Sam James
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=883df8a8c0afef2e1d0a17083d95001251f7d3f6

commit 883df8a8c0afef2e1d0a17083d95001251f7d3f6
Author: Vladimir Mezentsev 
Date:   Fri Jan 19 18:40:21 2024 -0800

Fix 31252 gprofng causes testsuite parallel jobs fail

Before running our tests, we made a fake installation into ./tmpdir.
This installation changes libopcodes.la in the build area.
Gas testing may fail if gas and gprofng tests are run in parallel.

I create a script to run gprofng. Inside this script, LD_LIBRARY_PATH,
GPROFNG_SYSCONFDIR are set.
putenv_libcollector_ld_misc() first uses $GPROFNG_PRELOAD_LIBDIRS to create
directories for SP_COLLECTOR_LIBRARY_PATH ($SP_COLLECTOR_LIBRARY_PATH is
used
to set up LD_PRELOAD).

gprofng/ChangeLog
2024-01-19  Vladimir Mezentsev  

PR gprofng/31252
PR gprofng/30808
* src/envsets.cc (putenv_libcollector_ld_misc): Use
$GPROFNG_PRELOAD_LIBDIRS first to build SP_COLLECTOR_LIBRARY_PATH.
* testsuite/config/default.exp: Create a script to run gprofng.
* testsuite/lib/display-lib.exp: Fix typo.

(cherry picked from commit 26f557af696726a8556bff12f54e4d05cd7a5034)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gprofng/30808] gprofng tests failed

2024-01-22 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=30808

--- Comment #7 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by Vladimir Mezentsev
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=26f557af696726a8556bff12f54e4d05cd7a5034

commit 26f557af696726a8556bff12f54e4d05cd7a5034
Author: Vladimir Mezentsev 
Date:   Fri Jan 19 18:40:21 2024 -0800

Fix 31252 gprofng causes testsuite parallel jobs fail

Before running our tests, we made a fake installation into ./tmpdir.
This installation changes libopcodes.la in the build area.
Gas testing may fail if gas and gprofng tests are run in parallel.

I create a script to run gprofng. Inside this script, LD_LIBRARY_PATH,
GPROFNG_SYSCONFDIR are set.
putenv_libcollector_ld_misc() first uses $GPROFNG_PRELOAD_LIBDIRS to create
directories for SP_COLLECTOR_LIBRARY_PATH ($SP_COLLECTOR_LIBRARY_PATH is
used
to set up LD_PRELOAD).

gprofng/ChangeLog
2024-01-19  Vladimir Mezentsev  

PR gprofng/31252
PR gprofng/30808
* src/envsets.cc (putenv_libcollector_ld_misc): Use
$GPROFNG_PRELOAD_LIBDIRS first to build SP_COLLECTOR_LIBRARY_PATH.
* testsuite/config/default.exp: Create a script to run gprofng.
* testsuite/lib/display-lib.exp: Fix typo.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gprofng/31252] gprofng causes testsuite parallel jobs fail (again)

2024-01-22 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=31252

--- Comment #2 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by Vladimir Mezentsev
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=26f557af696726a8556bff12f54e4d05cd7a5034

commit 26f557af696726a8556bff12f54e4d05cd7a5034
Author: Vladimir Mezentsev 
Date:   Fri Jan 19 18:40:21 2024 -0800

Fix 31252 gprofng causes testsuite parallel jobs fail

Before running our tests, we made a fake installation into ./tmpdir.
This installation changes libopcodes.la in the build area.
Gas testing may fail if gas and gprofng tests are run in parallel.

I create a script to run gprofng. Inside this script, LD_LIBRARY_PATH,
GPROFNG_SYSCONFDIR are set.
putenv_libcollector_ld_misc() first uses $GPROFNG_PRELOAD_LIBDIRS to create
directories for SP_COLLECTOR_LIBRARY_PATH ($SP_COLLECTOR_LIBRARY_PATH is
used
to set up LD_PRELOAD).

gprofng/ChangeLog
2024-01-19  Vladimir Mezentsev  

PR gprofng/31252
PR gprofng/30808
* src/envsets.cc (putenv_libcollector_ld_misc): Use
$GPROFNG_PRELOAD_LIBDIRS first to build SP_COLLECTOR_LIBRARY_PATH.
* testsuite/config/default.exp: Create a script to run gprofng.
* testsuite/lib/display-lib.exp: Fix typo.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


  1   2   3   4   5   6   7   8   9   10   >