[Bug ld/28021] riscv: wrong double relaxation with LTO

2021-07-07 Thread matz at suse dot de
https://sourceware.org/bugzilla/show_bug.cgi?id=28021

Michael Matz  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|NEW |RESOLVED

--- Comment #4 from Michael Matz  ---
Fixed in master and 2.37.  Not planning further backports.

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


[Bug ld/28021] riscv: wrong double relaxation with LTO

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

--- Comment #3 from cvs-commit at gcc dot gnu.org  ---
The binutils-2_37-branch branch has been updated by Michael Matz
:

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

commit 7764dd1f5fdc9a4d6d6233b35bbb14ab161df299
Author: Michael Matz 
Date:   Mon Jun 28 17:57:17 2021 +0200

elf/riscv: Fix relaxation with aliases [PR28021]

the fix for PR22756 only changed behaviour for hidden aliases,
but the same situation exists for non-hidden aliases: sym_hashes[]
can contain multiple entries pointing to the same symbol structure
leading to relaxation adjustment to be applied twice.

Fix this by testing for duplicates for everything that looks like it
has a version.

PR ld/28021

bfd/
* elfnn-riscv.c (riscv_relax_delete_bytes): Check for any
versioning.

ld/
* testsuite/ld-riscv-elf/relax-twice.ver: New.
* testsuite/ld-riscv-elf/relax-twice-1.s: New.
* testsuite/ld-riscv-elf/relax-twice-2.s: New.
* testsuite/ld-riscv-elf/ld-riscv-elf.exp
(run_relax_twice_test): New, and call it.

(cherry picked from commit 235f5ef4a6b8fbdcfaea8b629f7c6a9792a789de)

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


[Bug ld/28021] riscv: wrong double relaxation with LTO

2021-07-06 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=28021

--- Comment #2 from cvs-commit at gcc dot gnu.org  ---
The master branch has been updated by Michael Matz :

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

commit 235f5ef4a6b8fbdcfaea8b629f7c6a9792a789de
Author: Michael Matz 
Date:   Mon Jun 28 17:57:17 2021 +0200

elf/riscv: Fix relaxation with aliases [PR28021]

the fix for PR22756 only changed behaviour for hidden aliases,
but the same situation exists for non-hidden aliases: sym_hashes[]
can contain multiple entries pointing to the same symbol structure
leading to relaxation adjustment to be applied twice.

Fix this by testing for duplicates for everything that looks like it
has a version.

PR ld/28021

bfd/
* elfnn-riscv.c (riscv_relax_delete_bytes): Check for any
versioning.

ld/
* testsuite/ld-riscv-elf/relax-twice.ver: New.
* testsuite/ld-riscv-elf/relax-twice-1.s: New.
* testsuite/ld-riscv-elf/relax-twice-2.s: New.
* testsuite/ld-riscv-elf/ld-riscv-elf.exp
(run_relax_twice_test): New, and call it.

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


[Bug ld/28021] riscv: wrong double relaxation with LTO

2021-06-29 Thread sch...@linux-m68k.org
https://sourceware.org/bugzilla/show_bug.cgi?id=28021

--- Comment #1 from Andreas Schwab  ---
I'd guess the other archs never see that issue since versioned aliases are a
rare thing in the embedded world.

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


[Bug ld/28021] riscv: wrong double relaxation with LTO

2021-06-29 Thread mliska at suse dot cz
https://sourceware.org/bugzilla/show_bug.cgi?id=28021

Martin Liska  changed:

   What|Removed |Added

 CC||mliska at suse dot cz

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